开拓者期货期权程序化系统交易论坛
标题:
请教管理员关于A_SendOrder函数问题
[打印本页]
作者:
ST振翔
时间:
2014-3-5 14:28:29
标题:
请教管理员关于A_SendOrder函数问题
本帖最后由 ST振翔 于 2014-3-5 14:41 编辑
策略为反手模型,即满足开多条件的话,则平空仓开多仓。但时常发生成交不了的现象,因为人不总是在电脑旁边,这样容易浪费时机,还需要后续用监控器再操作一下。原有代码如下:
If(close[1]<ema[1])
{
MyEntryPrice=Open;
SellShort(1,MyEntryPrice);
}
If(close[1]>ema[1])
)
{
MyEntryPrice=Open;
Buy(1,MyEntryPrice);
}
现在想改成用A_SendOrder函数来控制开仓,不考虑测试和滑点等问题,是否代码改成如下就可以了?同时MyEntryPrice值需要止损用,还是用OPEN取值:
If(close[1]<ema[1] && A_SellPosition()==0)
{
MyEntryPrice=Open;
A_SendOrder(Enum_Sell,Enum_Entry,1,Q_BidPrice);
}
If(close[1]>ema[1] && A_BuyPosition()==0)
{
MyEntryPrice=Open;
A_SendOrder(Enum_Buy,Enum_Entry,1,Q_AskPrice);
}
总而言之,希望能用A_SendOrder函数达到和原来代码差不多的效果,在实盘中稍微有点价格偏差也没关系。
作者:
ample
时间:
2014-3-19 10:53:38
楼主的代码,理论上可以,但是实际执行中,A_SellPosition()、 A_BuyPosition()的值不见得能及时得到,tb程序每个tick都会触发,可能会存在重复开仓的问题
作者:
sym9800pro
时间:
2014-3-19 20:10:09
楼主别忘了写平仓操作哦
作者:
cantor3383
时间:
2014-5-19 20:56:05
ample 发表于 2014-3-19 10:53
楼主的代码,理论上可以,但是实际执行中,A_SellPosition()、 A_BuyPosition()的值不见得能及时得到,tb程 ...
我也遇到同样的问题,请问AMPLE管理员有办法解决吗?,急,谢谢
作者:
ample
时间:
2014-6-5 13:27:46
参考公式开发指南中的例子,可以使用延时的方法,但是延时多久呢?根据交易的实际情况,设置可以接受的时间吧,不一定能完全保证
作者:
camedia
时间:
2014-8-25 13:52:47
这个不用全局变量控制会重复发单吧。
欢迎光临 开拓者期货期权程序化系统交易论坛 (http://bbs.tb18.net/)
Powered by Discuz! X2