全部 智大领峰 TBQuant功能 TBL语言 TB开户 问答专区 高手圈 其他
重复开单
2024-01-26 10:17

Params

//此处添加参数

Numeric length1(5);

Numeric length2(20);

Vars

//此处添加变量

series<Numeric> ma1;

series<Numeric> ma2;

series<bool>    bool_crossover;

series<BOOL>    bool_crossunder;

Global Bool     trade_mark;


Defs


Events

OnBar(ArrayRef<Integer> indexs)

//初始化事件函数,策略运行期间,首先运行且只有一次,应用在订阅数据等操作

{

//双均线 用收盘价计算两根均线

//金叉和死叉状态

ma1 = Average(Close,length1);

ma2 = Average(Close,length2);

PlotNumeric(\"ma1\",ma1);

PlotNumeric(\"ma2\",ma2);

//金叉

bool_crossover = ma1[1] <= ma2[1] and ma1 > ma2;

//死叉

bool_crossunder = ma1[1] >= ma2[1] and ma1 < ma2;

If(bool_crossover[1] and trade_mark)

{

Array<Integer> orderids;

A_SendOrderEx(Enum_Buy,Enum_exit,1,Open,orderids);

A_SendOrderEx(Enum_Buy,Enum_Entry,1,Open,orderids);//买

trade_mark = False;

}

If(bool_crossunder[1] and trade_mark);

  {

  Array<Integer> orderids;

  A_SendOrderEx(Enum_sell,Enum_Exit,1,Open,orderids);//卖

  A_SendOrderEx(Enum_sell,Enum_entry,1,Open,orderids);

  trade_mark = False;

  }

}

OnBarOpen(ArrayRef<Integer> indexs)

{

trade_mark = True;

}

kyover

没有做仓位判断

开仓前先查询是否开过仓

可以直接查询账户仓位

如果有多策略同时在交易同一个品种,那就需要追踪策略发出的订单,自行记录

2024-01-26 10:54
zhao93611
@kyover

谢谢

2024-01-31 15:00
a2420956784
@zhao93611

朋友,你这个问题解决了吗?我也遇到了,想跟你交流一下你是怎么处理的

2024-02-01 11:09
kyover

a_sendorderex历史bar也会执行报单命令,用barstatus==2进行约束

2024-02-01 14:01
您未登录,请先 登录注册 后发表评论
顶部