第六章金字塔的后台程式化交易
金字塔提供功能性和扩展性更为强大的基于后台预警模式的程式化交易模式,可以在不影响用户前台图形操作情况下,可以高效与预警系统一起工作来实现自动交易,由于后台程式化交易是金字塔在后台进行,不需要图表打开不占用过多的资源,由于只只需要最后一个周期的信号,所以原则上公式不要多余计算,故效率高,便于对多个品种同一个策略进行轮循监控.用户前期编写的自动交易策略是需要先在图表上和程式化交易评测上通过后才可以放到后台去执行程式化交易。为了让用户更快的编写和熟悉金字塔的后台程式化交易,金字塔的程式化交易函数,前面都在交易系统函数名称前加 T 字母,比如BUY改为TBUY, 使用方法大致相同.户仔细注意查看函数的使用说明。与图表显示的交易系统函数不同的是,后台程式化交易的函数都使用的实际的用户持仓和资金
用以显示再图表做测试的后台程式化交易不能使用图表交易功能,且图表交易和后台交易的函数不能混用,即后台交易系统中不允许使用ENTERLONG等交易信号,传统的ENTERLONG交易信号里也不允许出现后台程式化交易系统的函数。
此外,后台程式化交易由于用户无法直接在图表上看到信号的整个出现过程,故对用户的公式编写水平有一定的要求,用户需要对金字塔的后台交易系统工作机理有比较深的了解,并且要对自己的公式系统有清晰的认识,这样一旦遇到问题也能及时找到问题的原因。后台交易过程中,一旦遇到问题,建议用户仔细阅读后面第八章的有关后台程式化交易的调试部分。
本章主要讲述交易测试系统函数、程序化交易系统函数,更具体的程序交易环节暨流程请同时参阅“金字塔程式化交易设计指南”。
将前面用在显示图表的交易的公式改为实盘后台的交易的公式如下:
MA3:MA(C,3);
MA5:MA(C,5);
TBUY(CROSS(MA3,MA5),1,LMT,C); //按照最新价限价开多
TSELL(CROSS(MA5,MA3),0,LMT,C);//按照最新价限价平多,0表示平掉全部持仓
请注意TBUY和TSELL函数的参数出现了变化,真正的下单时,需要指定下单类型和价格的,否则系统会按照市价进行交易。
用以模拟交易的函数和真实交易的函数,大部分只是有了前面T字母差别,大部分的用以交易评测的交易系统,只要将交易函数部分前面加T字母即可解决,唯一区别最大的就是TBUY,TSELL,TBUYSHORT,TSELLSHORT 这4个函数与模拟交易用的函数区别较大,请仔细辨别。
请注意交易控制符 THISCLOSE 在真实交易中被 LMT 等真实交易控制符所取代,金字塔的模拟交易控制符和真实交易控制符两者不能通用。金字塔的真实下单函数只支持LMT限价 MKT市价 STP止损 STPLMT限价止损 这4个交易控制符。
真实下单交易函数,下单数量不再支持百分比模式。
程式化交易的函数介绍:
程式化交易系统之开多操作:
用法:TBUY(COND,V,[Type,P1,P2,AC,STOCK]);表示当COND条件成立时,
买入V股(手)当前品种,
TYPE表示开仓类型,LMT限价 MKT市价 STP止损 STPLMT限价止损
P1表示开仓价格,当TYPE为LMT和STP,STPLMT时为指定限价和止损价格,其他情况填0
P2为止损限价,当TYPE为STPLMT时,必须指定P2的止损限价,其他情况填0,当P1止损价触发时按照P2价格止损操作.
当TYPE参数省略时,为市价开仓。AC为帐户ID,为空时为系统默认帐户,否则将下单到指定帐户中
STOCK为品种代码,比如'SH600215',为空或者不填时为当前品种
例如:TBUY(C>O ,1000,LMT,C);表示收阳线则在本周期收盘价上买入1000股(手)。
TBUY(C>0,1000,STP,CLOSE+0.2);表示收阳线则在本周期收盘价高于0.2元下1000股(手)止损单,当盘中价格到了触发价时按市价开仓止损.
TBUY(C>0,1000,STPLMT,CLOSE+0.2,CLOSE);表示收阳线则在本周期收盘价高于0.2元下1000股(手)止损单,当盘中价格到了触发价时按CLOSE价格开仓止损
程式化交易系统之平多操作:
TSELL(COND,V,[Type,P1,P2,AC,STOCK]); 用法同上
程式化交易系统之开空操作:
TBUYSHORT(COND,V,[Type,P1,P2,AC,STOCK]); 用法同上
程式化交易系统之平空操作:
TSELLSHORT(COND,V,[Type,P1,P2,AC,STOCK]); 用法同上
注意:程式化交易系统的函数中交易类型Type与交易测试系统的差别
其它的程式化交易系统的函数,类似,请自己依次查看。
程式化交易执行语句常用的其它函数:
MINDIFF 最小变动价位
返回当前品种最小变动价位(可在市场管理中设置)。
若市场分类小数点为2时最小变动价位则为0.01
注意:该函数返回常数
VOLUNIT 每手单位
返回每手单位(可在市场管理中设置),注意:该函数返回常数
DYNAINFO(4) 取得最新动态行情: 今开
DYNAINFO(5) 取得最新动态行情: 最高
DYNAINFO(6) 取得最新动态行情: 最低
DYNAINFO(7) 取得最新动态行情: 最新
DYNAINFO(28) 取得最新动态行情: 买一价
DYNAINFO(34) 取得最新动态行情: 卖一价
DYNAINFO(54) 取得最新动态行情: 涨停
DYNAINFO(55) 取得最新动态行情: 跌停
联系客服