+增加传统基于图表前台显示的程式化交易功能
就是说46个交易系统函数在图表前台程式化交易中有效。
用交易系统函数编写的交易系统在测评报告的表现,与它在实际图表前台程式化交易基本一致。
1、图表程序化交易的好处是多个系统或者系统+人工同时交易同个品种不会出现“共振”;
2、资金管理就会有用,因为资金管理(头寸调整)是基于历史的;
3、更好的保持策略头寸和真实头寸的一致性。运用测试的系统投入使用不需要再更改,另外交易也更佳直观性;
4、是多重头寸管理(比如你开个多个头寸然后分别对其进行监控管理,如果不是基于历史数据是办不到的)和投资组合的基础,同时也比较适合长线交易。所以图表程序化交易支持新交易系统指令是非常有必要。
1.972新增加几个交易函数:
取指定帐户品种的指定方向的平均持仓成本——最近空仓以来计
用法:TAVGENTERPRICEEX2(AC,STOCK,N),AC为指定的帐户名,若为空表示取当前默认帐户,STOCK为指定的品种,若空表示当前品种,N为0表示取买持为1表示取卖持
该函数返回常数,并只在国内期货平台交易有效
取指定帐户的资金情况
用法:TACCOUNT2(N,AC),N为类型,用法与TACCOUNT相同,AC为指定帐户
该函数返回常数,并且只在国内期货品种下的帐户内容有效
当前位置之前所有交易中亏损最大一次的亏损额
用法:WORSTTRADE
得到当前帐户实际持仓量,与THOLDING不同是该函数返回结果不会因为当前含有未成交委托单而变化.多仓返回正数空仓返回负
用法:THOLDING2
该函数返回常数
输出指定的调试字符串到一个指定的文件中
用户可以在公式中通过输出指定的字符串到文件来实现调试或者其他的目的.借此可以借助这个功能来完成监控公式运行的各种细节参数.该函数用法与DEBUGFILE基本相同,唯一区别是该函数将会在所有周期内有效。
用法:DEBUGFILE2(PATH,STR,NUM,N),PATH为用户的本地计算机路径,STR为用户指定输出的一个行文字,NUM为用户指定的一个监控数字,N为1表示自动输出当前时间,为0表示不自动输出时间.
例如:DEBUGFILE2('D:\TEST.TXT','当前资产为%.2f',1234,1),将在公式的监控部分输出到D:\TEST.TXT文件, "当前资产为1234.00"
"%.2f"为一个打印的控制符号,系统会将他替换为指定的一个数字输出,%.2f为显示两位小数,%.0f则表示不显示小数
发送指定消息到指定或者全部连接用户(服务器远程预警功能)
用法:SENDMSG(COND,MSG,USER),当最后一个周期得COND条件成立时,发送消息MSG到用户USER中,多个用户可用逗号分割,为空串表示全部用户
SENDMSG(CLOSE>OPEN,'出现大阳线','');表示当最后一个周期为阳线时,给全部连接用户发送消息'出现大阳线'
USER支持*号通配符,例如TEMP* 表示前4个字符为TEMP的所有用户
该函数仅为金字塔金钻版专用
试了下面两个函数,似乎有问题,请帮忙看一下,是否我的用法不对?
TC:='80146';
TA:=TAVGENTERPRICEEX(TC,''); //返回的是第一单的均价,如果有第二单(如今开新单),不会反映在返回的均价里,是这样的吗?
AT:=TACCOUNT2(6,TC); //指定账户不起作用,返回的是当前账户的平常仓净值,似乎有问题?