设为首页收藏本站

 找回密码
 注册
查看: 2710|回复: 0
打印 上一主题 下一主题

建议增加虚拟BUY、SELL的开平仓函数,解决用指数交易主力 [复制链接]

Rank: 4

精华
0
UID
5754
积分
531
帖子
115
主题
57
阅读权限
50
注册时间
2009-10-27
最后登录
2023-11-3
跳转到指定楼层
1#
发表于 2011-11-10 13:57:59 |只看该作者 |倒序浏览
我的意思是用图表实盘交易的时候,用指数出信号交易但是不发实盘命令,像测试的时候一样,比如用XXBUY,XXSELL,这样指数也有交易记录和信号也会记录图表上的开平仓数量和盈亏,同时实盘发出交易主力合约命令,函数用A_SendOrder,价格用Q函数,现在的BUY、SELL的函数如果用指数合约在实盘时间会出错的。当然还有支持组合品种。
比如到时候代码是这样写:

  If(DATA0.MarketPosition!=1&&DATA0.High>=aaa0 ) //DATA0是白糖指数
     {
              Myprice0=Min(DATA0.HIGH+MinPoint0, AAA0+2*MinPoint0);
               DATA0.XXBuy(TUnits0,Myprice0);
               DATA3.A_SendOrder(Enum_Buy,Enum_Entry,TUnits0,DATA3.Q_AskPrice);//DATA3是白糖主力
      }
If(DATA1.MarketPosition!=1&&DATA1.High>=aaa1 ) //DATA1是天胶指数
     {
              Myprice0=Min(DATA0.HIGH+MinPoint0, AAA1+2*MinPoint0);
               DATA1.XXBuy(TUnits1,Myprice1);
               DATA4.A_SendOrder(Enum_Buy,Enum_Entry,TUnits1,DATA4.Q_AskPrice);//DATA4是天胶主力
      }
If(DATA2.MarketPosition!=1&&DATA2.High>=aaa2 ) //DATA2是铜指数
     {
              Myprice0=Min(DATA2.HIGH+MinPoint2, AAA2+2*MinPoint2);
               DATA2.XXBuy(TUnits2,Myprice2);
               DATA5.A_SendOrder(Enum_Buy,Enum_Entry,TUnits0,DATA5.Q_AskPrice);//DATA5是铜主力
      }
If(data0.MarketPosition==1&&data0.BarsSinceEntry>0) // 有指数多仓的情况
        {
          if(data0.Low <= MyEntryPrice0 - StopLossSet*MyEntryPrice0)
           Myprice0=Max(data0.Low-MinPoint0, MyEntryPrice0 - StopLossSet*MyEntryPrice0);
           data0.XXSell(0,Myprice0);
           data3.A_SendOrder(Enum_sell,Enum_Exit,TUnits0,DATA3.Q_AskPrice);   主力平仓
          }
If(data1.MarketPosition==1&&data1.BarsSinceEntry>0) // 有指数多仓的情况
        {
          if(data1.Low <= MyEntryPrice1 - StopLossSet*MyEntryPrice1)
           Myprice1=Max(data1.Low-MinPoint1, MyEntryPrice1 - StopLossSet*MyEntryPrice1);
           data1.XXSell(0,Myprice1);
           data4.A_SendOrder(Enum_sell,Enum_Exit,TUnits1,DATA4.Q_AskPrice);;   主力平仓
          }
If(data2.MarketPosition==1&&data2.BarsSinceEntry>0) // 有指数多仓的情况
        {
          if(data2.Low <= MyEntryPrice2 - StopLossSet*MyEntryPrice2)
           Myprice2=Max(data2.Low-MinPoint2, MyEntryPrice2 - StopLossSet*MyEntryPrice2);
           data2.XXSell(0,Myprice2);
           data5.A_SendOrder(Enum_sell,Enum_Exit,TUnits2,DATA5.Q_AskPrice);;   主力平仓
          }
您需要登录后才可以回帖 登录 | 注册

bottom

静态版|手机版|联系我们|交易开拓者 ( 粤ICP备07044698   

GMT+8, 2024-5-3 01:50

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部