资源描述
文华财经 研究部 1 程序化交易概念 2 “麦语言”介绍 3 模型基本结构和编写 4 如何编写带有资金管理和止损的策略模型 5 如何进行多维的模型评估 6 如何编写基于 Tick逐笔数据的日内高频模型 7 如何编写下单组件对下单过程进行精细控制 什么是程序化交易? 程序化是一个交易的概念,用户可以把平时的交易思想,写成交易 策略模型,让电脑去执行这些交易思想,自动下单。利用电脑的计算能 力和铁面无私,提高下单的速度和效率,避免交易收到情绪的影响,理 性交易。 程序化也是一个研究的概念,程序化平台都提供丰富历史数据和收 益、风险等多角度的模型评估算法的,用户可以在电脑的仿真交易环境 下,去测试、改进策略模型,这样交易思想就可以快速成熟了,不再需 要动辄几个月甚至几年的实盘验证了。利用电脑的历史数据存储能力, 能节省时间,节省金钱。 程序化交易需求分析 麦语言( My language)模型开发平台 赢智的“麦语言”源于 2004年文华推出的国内第一套程序 化函数库,经过 7年的发展,吸收几十万用户的意见反馈,一 点一点完善起来的的,是一套成熟稳定的模型开发平台。 麦语言倡导的是积木式的编程理念,把复杂算法封装到一个 个的函数里,采用“小语法,大函数”的构建模式。语法虽然 简单,但是配合专门的程序化数据结构,配合丰富的金融统计 函数库,同样可以支持逻辑复杂的金融应用。 麦语言的函数库,是经常更新的,根据客户的新要求随时添 加新函数,来支持编程者的交易新思想和新应用。 麦语言,是国内使用人数最多的程序化模型开发平台。 本章学习目标: 1、了解指标、模型相关术语; 2、熟悉模型编写的语法; 3、理解模型编写的结构和编写方法。 4、学习如何编写跨周期策略模型 指标、模型相关术语 模型编写的语法与操作符 模型编写的结构和编写方法 模 型 基 本 结 构 学习编写跨指标、跨周期模型 公式: 泛指指标、模型。没有具体指向性。 指标 : 指能够绘出图线但不发交易指令的公式。指标是一个技 术分析范畴的概念。 交易信号: 指指标上出现的提示投资者买卖的指示,可以是图线交 叉、文字、图形。投资者需要按照信号指示去手动委托下单 。交易信号也是一个技术分析范畴的概念。 交易模型: 指 能够 发出 BK、 SP等交易 指令, 模型还包含下单方向, 交易手数,止盈止损等与交易、资金使用相关的参数设置 。交易模型是一个交易范畴的概念。 交易指令 : 指交易模型自动发出的下单委托指令,可以不经过投资 者确认直接下单,也可以等待投资者回车确认再下单。交 易指令在 K线图上以不同颜色和形状的箭头来代表。交易指 令是一个程序化交易范畴的概念。 RSV:=(CLOSE-LLV(LOW,N)/(HHV(HIGH,N)-LLV(LOW,N)*100; K:SMA(RSV,M1,1); D:SMA(K,M2,1); J:3*K-2*D; 用指标监测行情: K线上穿 D线 RSV:=(CLOSE-LLV(LOW,N)/(HHV(HIGH,N)- LLV(LOW,N)*100; K:SMA(RSV,M1,1); D:SMA(K,M2,1); J:3*K-2*D; /以下是加入的交易指令 CROSS(K,D),BK;/K向上穿越 D,发出买开交易指令 CROSS(J,100),SP;/J向上穿越 100,发出卖平交易指令 CROSS(D,K),SK;/K向下穿越 D,发出卖开交易指令 CROSS(0,J),BP;/J向下穿越 0,发出买平交易指令 AUTOFILTER; 指标、模型相关术语 模型编写的语法与操作符 模型编写的结构和编写方法 模 型 基 本 结 构 1、命名部分: 支持汉字、字母、数字、划线格式命名,长度控制在 31字符 内; 命名不能和已存在的公式名称 重复。 2、定义变量名称 变量名称不能相互重复; 不能与参数名重复; 不能与函数名 重复。 3、半角输入法的大写 状态。 4、每个语句应该以分号 结束。 5、参数部分: 可以 设置六个 参数; 首先 是参数名称,然后是参数的最小值,最大值,最后是 参数的默认 值; 在 定义参数时要注意的是参数名称不可以重复 ,12个字符 内。 6、运用函数语言,也就是表达你的 语言: 函数 具有自己的表达式,运行它就需要将我们的思路,按 照函数的表达式套用表述。 命名 参数 MA5:=MA(C,5); MA10:=MA(C,10); CROSS(MA5,MA10); CROSS(MA10,MA5); CLOSE 引用收盘价 (在盘中指最新价 ),也可简写为 C 。 HIGH 引用最高价,也可简写为 H 。 LOW 引用最低价,也可简写为 L 。 OPEN 引用开盘价,也可简写为 O 。 MA(X,N) 求 X在 N周期内的简单移动平均。 计算方法 : MA=(A1+A2+A3+A4+A5)/5 求 A在 5个周期内的简单移动平均 CROSS(X,Y) 表示 X上穿 Y; 例: CROSS(CLOSE,MA(CLOSE,5);表示收盘线从下方向上穿过 5日均线 运用函数 定义变量 A:(O+C)/2; B:CO; /判断是否收阳;满足条件返回 1,否则返回 0 D:TIME=0910 /用于多条件逻辑关系 MA5:=MA(C,5); MA10:=MA(C,10); CROSS(MA5,MA10);/金叉 CROSS(MA10,MA5);/死叉 注释或者舍去 想 要在编写后,加入自己的语言注释,在结尾处用 “ /” 表示 ;或者 想舍去某段,在某段在最前端加入 “ /” ; 练习 1:为函数做注释 IFELSE(C,A,B) /如果 条件 C成立则返回 A值 ,否则返回 B值 SETTLE 引用结算价 REF(X,N) 引用 X在 N个周期前的值 MA(X,N) 求 X在 N周期内的简单移动平均。 定义变量: 结算 价: 15周期收盘价均线(显示定义 ); REF(H,1); REF(MA15,1); S:=SETTLE; MA15:MA(C,15); 衍生: 当前 K线的前一个周期最高价; 当前 K线的前一个周期 15均线; 5日均线上穿 10日均线的同时收盘价大于 20日均线,或者 5日 均 线上穿 10日均线的 5个点; MA5:=MA(C,5); MA10:=MA(C,10); MA20:=MA(C,20); A:(CROSS(MA5,MA10) 总结:清晰逻辑关系,可以用“()”来表示。 指标、模型相关术语 模型编写的语法与操作符 模型编写的结构和编写方法 模 型 基 本 结 构 在 编写前,需要将交易思想清晰量化后,通过语言函数编写 完成。 交易模型基本 结构: 1.定义需要的每个 变量 2.交易条件 +交易指令 MA5:=MA(C,5); MA10:=MA(C,10); CROSS(MA5,MA10),BPK; CROSS(MA10,MA5),SPK; 定义思路中涉及到的变量 交易条件,写入交易指令 关键字:反手指令 均线上穿平空做多,均线下穿平多做空; MA5:MA(C,5); MA10:MA(C,10); CROSS(MA5,MA10),BPK; CROSS(MA10,MA5),SPK; 具体细化思路: 5日均线上穿 10日均线,平空做多; 5日均线下穿 10日均线,平多做空; 关键字 :日内模型 日内交易:均线上穿平空做多,均线下穿平多做空; CROSS(MA5,MA10) CROSS(MA10,MA5) 具体细化思路: 3分钟周期 5日均线上穿 10日均线,平空做多; 5日均线下穿 10日均线,平多做空; DATE 取日期数( 19700101-20331231)。 用法: DATE 返回某周期的日期数。 TIME 取周期的时数。 用法: TIME 取周期的时数。 REF(X,N) 引用 X在 N个周期前的值 例 :REF(CLOSE,5);表示引用当前周期前第 5个周期的收盘价 HHV(X,N) LLV(X,N) 求 X在 N个周期内的最高值。若 N为 0则从第一个有效值开始算起。 例: HHV(HIGH,13);求 13个周期内的最高价的最大值。 该函数参数支持变量计算如 HHV(HIGH,VAR1);/VAR1为变量 VALUEWHEN(COND, DATA) 当条件 COND满足时,取当时的 DATA的值,否则取得前面一个满足条件 COND的值。 例: VALUEWHEN(HIGHREF(HIGH,5),HIGH);表示当前最高价大于前五个周期最高价的 最大值时返回当前最高价。 DATEREF(DATE,1)/今天第一根 K线 VALUEWHEN(DATEREF(DATE,1),O);/当天开盘价 VALUEWHEN(TIME=1030,O);/10点半那根 K线的 开盘价 昨天的收盘价? VALUEWHEN(DATEREF(DATE,1),REF(C,1); BKPRICE 返回最近一次模型买开位置的买开信号价位。 BARSBK 返回上一次买开仓距离当前 k线的 k线数。 BARSLAST(X) 求上一次 X条件成立到当前的周期数 COUNT(X,N) 表示统计在 N周期内满足 X条件的周期数。如果 N为 0则表示从已申请到的数据的 第一天开始算起。 例: WR:=-100*(HHV(HIGH,N)-CLOSE)/(HHV(HIGH,N)-LLV(LOW,N); COUNT(WR80,5);表示统计在 5个周期内满足 WR80的次数 AUTOFILTER 对模型的所有信号按照先买后卖,先开后平的顺序过滤。 1.连续的同方向指令只有第一个有效,其他的将被过滤; 2.交易指令必须配对出现(例如:前面已经有了买开指令,则后面只允许出现卖 平指令,其他的指令都被滤掉。这也就意味着,第一个指令只能是买开或者卖开指 令,其他的都被过滤); CBKPRICE+50*MD;/最新价 大于买开 仓价位的 50个点 HHV(H,BARSBK+1);/开仓到目前为止最高价 N:=BARSLAST(DATEREF(DATE,1)+1;/今天开盘到目前为 止的周期数 HH:HHV(H,N);/开盘到目前为止的最高价 昨天 开盘的最 高价 ? 表达式一: REF(HH,N); 表达式二: VALUEWHEN(DATEREF(DATE,1),REF(HH,1); 模型编写扩展: 学习跨周期模型的编写原理和编写步骤。 跨周期函数介绍 引用某品种在某个周期上加载了某个指标的数据。 用法: #IMPORT CODE, PERIOD, FORMULA AS VAR 引用 CODE 所对应的合约 PERIOD 周期下指标 FORMULA 的数据。 CODE 文华码, PERIOD 周期, FORMULA 引用指标名, VAR 定义变量名 跨周期跨合约模型的编写规则 1.只能引用 .FML/.XFML文件 2.只能引用如下周期: MIN1 MIN3 MIN5 MIN15 MIN30 HOUR1 DAY WEEK MONTH 3.只能短周期引用长周期 4.被引用的指标中不能存在引用 5.如果不写文华码,默认引用当前合约 ,也可以直接写合约代码如 :rb1201 6.FORMULA 引用指标名,只能引用除数字、或者数字开头的名称之外 的名称。 跨周期跨合约模型的编写思路及案例 1.同一合约不同周期调用 示范 1 2.同一合约不同周期调用 示范 2 3.不同合约之间的数据调用 例 1 同一合约不同周期的数据调用 要求 当日均线出现多头排列时, 5分钟 KD线金叉,做多。 当日均线出现空头排列时, 5分钟 KD线死叉,做空。 例 1: 先建立一个指标 名称 AAA MA5:=MA(C,5); MA10:=MA(C,10); MA30:=MA(C,30); 再建立你的模型 #IMPORT , DAY,AAA AS VAR DM5:=VAR.MA5; DM10:=VAR.MA10; DM30:=VAR.MA40; RSV:=(CLOSE-LLV(LOW,N)/(HHV(HIGH,N)-LLV(LOW,N)*100; K:SMA(RSV,M1,1); D:SMA(K,M2,1); J:3*K-2*D; DM5DM10 DM5DM10 DM5DM10 AUTOFILTER; 当沪胶指数价格破 20日新高,橡胶 1201的 MA5MA10,做多。 当沪胶指数价格破 20日新低,橡胶 1201的 MA5REF(H20,1); B:=CMA10,BPK; DL20/如果买开价位比当前价位高出 60,且买开价位存在,卖平仓 请注意当模型存在连续多个开仓信号 (加仓 )的情况下,该函数返回的是最后一次开仓信号的价 格 ,而不是开仓均价。 注: BKPRICE 只在加载之后的 K线上才返回信号价位。效果测试中该函数返回信号位置的收盘 价 SKPRICE 卖开信号位置的卖开信号价位 用法: SKPRICE返回最近一次模型卖开位置的卖开信号价位。 例如 :CLOSE-SKPRICE60 /如果当前价位高出卖开价位 60, 且卖开价 位存在 , 买平仓 请注意当模型存在连续多个开仓信号 (加仓 )的情况下,该函数返回的是最后一次开仓信号的价 格 ,而不是开仓均价。 注: SKPRICE 只在加载之后的 K线上才返回信号价位。效果测试中该函数返回信号位置的收盘 价 FEE 合约手续费 用法: FEE返回当前合约的手续费(用户启动模组时设置的)。 注意不能与未来函数同时使用如 ISLASTBAR,EMA2,ZIGZAG,BACKSET,PEAK,PEAKBARS,TROUGH,TROUGHBARS,REFX 等 本函数运算量很大,将占用很多的 CPU资源,导致行情刷新速度变慢,请谨慎使用 ! MONEY 虚拟资金余额 用法: MONEY返回虚拟资金余额。 注意与未来函数同时使用 ISLASTBAR,EMA2,ZIGZAG,BACKSET,PEAK,PEAKBARS, TROUGH,TROUGHBARS,REFX等可能会导致误差。 MARGIN 合约保证金 用法: MARGIN返回当前合约的保证金比率(用户启动模组时设置的)。 注意与未来函数同时使用 ISLASTBAR,EMA2,ZIGZAG,BACKSET,PEAK,PEAKBARS, TROUGH,TROUGHBARS,REFX等可能会导致误差。 VOLMARGIN 当前合约的持仓保证金 用法: VOLMARGIN计算当前的持仓保证金。 注意与未来函数同时使用 ISLASTBAR,EMA2,ZIGZAG,BACKSET,PEAK,PEAKBARS, TROUGH,TROUGHBARS,REFX等可能会导致误差。 MONEYRATIO 资金使用率 用法: MONEYRATIO返回当前的虚拟资金的使用率。 注意与未来函数同时使用 ISLASTBAR,EMA2,ZIGZAG,BACKSET,PEAK,PEAKBARS, TROUGH,TROUGHBARS,REFX等可能会导致误差。 MONEYTOT 虚拟总资金 用法: MONEYTOT返回当前虚拟总资金(虚拟资金余额 +持仓保证金)。 注意与未来函数同时使用 ISLASTBAR,EMA2,ZIGZAG,BACKSET,PEAK,PEAKBARS, TROUGH,TROUGHBARS,REFX等可能会导致误差。 PROFIT 虚拟逐笔浮盈 用法: PROFIT返回当前的虚拟逐笔浮动盈亏。 注意与未来函数同时使用 ISLASTBAR,EMA2,ZIGZAG,BACKSET,PEAK,PEAKBARS, TROUGH,TROUGHBARS,REFX等可能会导致误差。 SETDEALPERCENT 设置下单的虚拟资金使用比例 用法: SETDEALPERCENT(fPercent)表示每次按资金的 fPercent( 范围 1100)下单。 例子: SETDEALPERCENT(20); /每次按资金比例的 %20下单 注:应该与 AUTOFILTER函数同时使用 BUYVOL 模型虚拟多头持仓 用法: BUYVOL返回模型虚拟多头持仓。 注意与未来函数同时使用 ISLASTBAR,EMA2,ZIGZAG,BACKSET,PEAK,PEAKBARS, TROUGH,TROUGHBARS,REFX等可能会导致误差。 SELLVOL 模型虚拟空头持仓 用法: SELLVOL返回模型虚拟空头持仓。 注意与未来函数同时使用 ISLASTBAR,EMA2,ZIGZAG,BACKSET,PEAK,PEAKBARS, TROUGH,TROUGHBARS,REFX等可能会导致误差。 一、资金管理模型的编写思路及案例 利用头寸函数实现对仓位的加减。 例 1 加仓模型 A:=多头开仓条件 ; A1:=多头加仓条件 ; B:=空头交易条件 ; B1:=空头加仓条件 ; D:=多头平仓条件 ; E:=空头平仓条件 ; A B BUYVOL2 SELLVOL2 D E 注意,交易时要考虑前一信号方向防止锁仓。 减仓模型 A:=多头开仓条件 ; B:=空头开仓条件 ; E1:=多头平仓条件 1; E2:=多头平仓条件 2; F1:=空头平仓条 1; F2:=空头平仓条件 2; A ,BK; B ,SK; E1 E2 F1 F 2 例 2:对交易资金的管理 /过滤模型 每次下单使用当时资金的 20% SETDEALPERCENT(20); DIFF:=EMA(CLOSE,12) - EMA(CLOSE,26); DEA:=EMA(DIFF,9); DIFF0 DIFF0 DIFF0 AUTOFILTER; 10日均线之上开多仓(开仓资金可用资金 20%),价格每上涨 10%止盈平 仓 50%仓位,上涨 20%止盈全部仓位。跌破 5日线止损。 N为合约单位 MA10:=MA(C,10); MA5:=MA(C,5); CROSS(C,MA10),BK(MONEY*0.2/(N*C*MARGIN); CROSS(C,BKPRICE*1.1),SP(BUYVOL*0.5); CROSS(C,BKPRICE*1.2),SP(BUYVOL); CROSS(MA5,C),SP(BUYVOL); /非过滤模型 收盘价上穿 5周期均线,买开仓。收盘价连续 2根站上 5周期 均线,且 K线收阳,加仓 1手。 收盘价下穿 5周期均线,卖开仓。收盘价连续 2根小于 5周期 均线,且 K线收阴,加仓 1手。 MA5:=MA(C,5); CROSS(C,MA5,) CROSS(MA5,C) EVERY(CMA5,2) EVERY(CMA5,2) 平多条件 平空条件 二、 止盈止损模型的编写思路及案例 例 1:限价止损、限价止盈模型 A:=多头交易条件 ; B:=空头交易条件 ; E:=多头平仓条件 ; F:=空头平仓条件 ; A,BK; E|C=BKPRICE+150,SP; B,SK; F|C=SKPRICE+100|CMA1,BK; (C=BKPRICE 例 2:回撤止损止盈模型 使用资金管理,止盈止损模型需要注意的问题 编写加减仓位时要注意对信号的判断。 (避免锁仓 ) 动态 止 损如果涉及到步长,要注意止损价位的变化和步长的相关度。 大豆 1205合约 : 低于买开仓价 10个点差,多头止损; 高于买开仓价 20个点差,多头止赢 ; 高于卖开仓价 10个点差,空头止损; 低于卖开仓价 20个点差,空头止赢; A:=MINPRICE(A1205); 多头开仓条件 ,BK; (C=BKPRICE+TP*A) 空头开仓条件 ,SK; (C=SKPRICE+SL*A|C0,BP; /止损点差为 SL,止赢点差为 TP 收益率测算 信号和资金记 录表 敏感性测试 图 多线程参数 优化 推荐实盘头寸 信号和资金记录表 关注资金回撤 敏感性测试图 寻找关键点 多线程参数优化 确定最优参数 推荐实盘头寸 控制交易风险 收益率测算 了解模型详情 信号和资金记录表 关注资金回撤 敏感性测试图 寻找关键点 参数优化 确定最优参数 推荐实盘头寸 控制交易风险 收益率测算 了解模型详情 信号和资金记录表 关注资金回撤 敏感性测试图 寻找关键点 参数优化 确定最优参数 推荐实盘头寸 控制交易风险 收益率测算 了解模型详情 信号和资金记录表 关注资金回撤 敏感性测试图 寻找关键点 参数优化 确定最优参数 推荐实盘头寸 控制交易风险 收益率测算 了解模型详情 信号和资金记录表 关注资金回撤 敏感性测试图 寻找关键点 参数优化 确定最优参数 推荐实盘头寸 控制交易风险 收益率测算 了解模型详情 课程内容 日内高频函数介绍 日内模型的编写思路及案例 使用日内模型需要注意的问题 日内高频函数介绍 引用盘口数据:挂单数据和成交数据 引用数据类型: TICK数据和秒周期数据 挂单数据 L2_BID1 取买一价 L2_BIDVOL1 取买一量 L2_BID2 取买二价 L2_BIDVOL2 取买二量 L2_BID3 取买三价 L2_BIDVOL3 取买三量 L2_BID4 取买四价 L2_BIDVOL4 取买四量 L2_BID5 取买五价 L2_BIDVOL5 取买五量 注: K线图和 TICK都可以使用 挂单数据 L2_ASK1 取卖一价 L2_ASKVOL1 取卖一量 L2_ASK2 取卖二价 L2_ASKVOL2 取卖二量 L2_ASK3 取卖三价 L2_ASKVOL3 取卖三量 L2_ASK4 取卖四价 L2_ASKVOL4 取卖四量 L2_ASK5 取卖五价 L2_ASKVOL5 取卖五量 注: K线图和 TICK都可以使用 挂单数据 ASKBIGVOLPRICE: 返回 TICK图中该笔 Tick 盘口满足大单条件的与最新价的 最近价格 BIDBIGVOLPRICE: 返回 TICK图中该笔 Tick 盘口满足大单条件的与最新价的 最近价格 CALVOLPRICELIS: TICK图中初始化盘口大单价格表 ,主要在 BIDBIGVOLPRICE 与 ASKBIGVOLPRICE 前使用,提供初始化 注:仅限 TICK使用 函数解释 1、 ASKBIGVOLPRICE、 BIDBIGVOLPRICE最近大单价格 大单:自动或手动定义 2、 CALVOLPRICELIST : TICK图中初始化盘口大单价格表 初始化五档或者五档之外大单列表,供提取 成交数据 L2_PRICE: 返回 TICK图中该笔 TICK的成交价。 L2_VOLUME: 返回 TICK图中该笔 TICK的成交量。 注:仅限 TICK使用 成交数据 L2_SETBIGVOL( nVol )设置大单成交手数阈值,成交手数大于 nVol的为大单 注: 1、仅限秒周期使用 2、定义下面红色字体函数的大单算法 成交数据 L2_BKVOL 返回当前秒周期买开的成交量 L2_SKVOL 返回当前秒周期卖开的成交量 L2_BPVOL 返回当前秒周期买平的成交量 L2_SPVOL 返回当前秒周期卖平的成交量 L2_BKBIGCOUNT 返回当前秒周期买开的大单成交次数 L2_SKBIGCOUNT 返回当前秒周期卖开的大单成交次数 L2_BPBIGCOUNT 返回当前秒周期买平的大单成交次数 L2_SPBIGCOUNT 返回当前秒周期卖平的大单成交次数 L2_BKBIGTOTVOL 返回当前秒周期买开的大单成交量 L2_SKBIGTOTVOL 返回当前秒周期卖开的大单成交量 L2_BPBIGTOTVOL 返回当前秒周期买平的大单成交量 L2_SPBIGTOTVOL 返回当前秒周期卖平的大单成交量 注:仅限秒周期使用 成交数据 L2_BIDVOL 返回当前秒周期主动买的成交量 L2_ASKVOL 返回当前秒周期主动卖的成交量 L2_BIDBIGCOUNT 返回当前秒周期主动买的大单成交次数 L2_ASKBIGCOUNT 返回当前秒周期主动卖的大单成交次数 L2_BIDBIGTOTVOL 返回当前秒周期主动买的大单成交量 L2_ASKBIGTOTVOL 返回当前秒周期主动卖的大单成交量 注:仅限秒周期使用 小节 引用函数,相对比较简单,直接将函数写进相应 的语句,函数即代表其本身所表示的数值。 日内模型的编写思路及案例 买卖人气型 大单跟踪型 买卖人气型 根据盘口价量变化判断买卖双方的交易气氛,依此作 为入场依据,可获得短暂盈利。 可能用到的函数:各档位委托量、多空双方的大单价 格、主动买卖的成交次数等 例 1 A:=L2_BIDVOL1+L2_BIDVOL2+L2_BIDVOL3;/定义买盘前 3档总量 B:=L2_ASKVOL1+L2_ASKVOL2+L2_ASKVOL3;/定义卖盘前 3档总量 D:A-B; CROSS(D,0)/买量大于卖量且前一个 指令不是开仓指令,则买开仓 1手; CROSS(0,D)/买量小于卖量且前一个 指令不是开仓指令,则卖开仓 1手; EVERY(DREF(D,1),2)/连续 2个周期 买量不断增加且前一个指令是卖开仓,则平 1手空单; EVERY(DL2_ASKBIGCOUNT,3),BPK; /三个周期内,主动 买大单成交次数一直大于主动卖成交次数,做多 EVERY(L2_BIDBIGCOUNTL2_ASKBIGCOUNT,3),SPK; /三个周期内,主动 买大单成交次数一直小于主动卖成交次数,做空 AUTOFILTER; 使用日内模型需要注意的问题 1、日内平仓 2、手续费 3、滑点 4、信号忽闪 策略模型 何时发出信号? 下单组件 如何进行下单? 交易系统 交易成功。 控制成交成本 智能分批下单。 实现个性化交易 自定义止损止盈。 基本语法 函数简介 流程图解 编写范例 盘口信息 Offers(Code,strContent) 某合约买卖盘报价 Volume(Code) 某合约当前成交量 交易系统信息 T_Equity(Type), 返回交易账号当前权益 T_OrderState(OrderID) 返回委托状态 策略模型信号 F_BuyAvgPrice() 返回模型多头持仓成本价 F_Sig() 返回模型当前的信号 下单控制 T_Deal(Code,bs,kp,vol,price) 按指定价格发出委托 T_DeleteOrderAll() 撤掉所有未成交挂单 谢 谢 祝交易顺利
展开阅读全文