- 精华
- 20
- 在线时间
- 2981 小时
- UID
- 4
- 积分
- 22709
- 帖子
- 4802
- 阅读权限
- 255
- 注册时间
- 2007-7-20
- 最后登录
- 2024-1-15
- 精华
- 20
- UID
- 4
- 积分
- 22709
- 帖子
- 4802
- 主题
- 64
- 阅读权限
- 255
- 注册时间
- 2007-7-20
- 最后登录
- 2024-1-15
|
分批发送的方案在30分钟不好写,可以考虑采取1分钟上获取30分钟数据计算,然后按照每分钟发2手这种方式,但实现起来还是有些复杂。
不考虑开仓方式的代码如下:
- Params
- Numeric StopLossSet(0.5); // 0.5%止损
- Numeric Lots(1); // 1手
- Vars
- Numeric MyPrice;
- Begin
- If(Time >= 0.0930 && Time < 0.1430)
- {
- If(MarketPosition==0 && Close > Close[1])
- {
- Buy(Lots,NextOpen,True);
- }Else If(MarketPosition==0 && Close < Close[1])
- {
- SellShort(Lots,NextOpen,True);
- }
- }Else If(Time >=0.1430)
- {
- Sell(0,Open);
- BuyToCover(0,Open);
- }
-
- If(MarketPosition==1)
- {
- If(Low <= AvgEntryPrice*(1-StopLossSet*0.01))
- {
- MyPrice = AvgEntryPrice*(1-StopLossSet*0.01);
- If(Open <= AvgEntryPrice*(1-StopLossSet*0.01))
- MyPrice = Open;
- Sell(0,MyPrice);
- }
- }Else If(MarketPosition==-1)
- {
- If(High >= AvgEntryPrice*(1+StopLossSet*0.01))
- {
- MyPrice = AvgEntryPrice*(1+StopLossSet*0.01);
- If(Open >= AvgEntryPrice*(1+StopLossSet*0.01))
- MyPrice = Open;
- BuyToCover(0,MyPrice);
- }
- }
- End
复制代码 |
|