您現在的位置:程序化交易>> 期貨公式>> 交易開拓者(TB)>> 開拓者知識>>正文內容

關于A_SendOrder函數使用的實例 [開拓者 TB]

  • 咨詢內容: 版主您好,我從網上http://www.tradeblazer.net/article/45.html直接復制了這個每日平倉的范例,命名為test公式,然后在期貨模擬賬戶打開這個交易公式,但是收盤時沒有反應。我有這幾個問題:
    1)表示商品品種的data0,data1,data2在實際的交易公式編寫時是不是要替換成商品編號,如Data0.A_SendOrder是不是要變化;
    2)如果想做半小時線或者小時線的判斷,這個條件語句是否成立,(CurrentTime*100-Floor(CurrentTime*100, 1))*100==29 Or (CurrentTime*100-Floor (CurrentTime*100, 1))*100==59;
    3)如果方便請問是否可以提供一個單賬戶單商品的實際自動交易例子,或提供鏈接也可以,其中的A_SendOrder內容直接按實際使用的給出即可,不用偽代碼。

    非常感謝!

    每日平倉的范例如下:
    1. Params
    2.     Numeric offSet(1);                    // 委托價格偏移,為了保證成交
    3.     Numeric BeforeMins(5);                // 收盤前幾分鐘開始操作
    4. Vars
    5.     Numeric tempPos; // 倉位
    6.     Numeric DeleteOrderTickCounter;
    7.     Numeric HasSendOrder(0);
    8. Begin
    9.     If(BarStatus == 0)
    10.     {
    11.         DeleteOrderTickCounter = 9999;
    12.         HasSendOrder = 0;
    13.         SetGlobalVar(0,DeleteOrderTickCounter);
    14.         SetGlobalVar(1,HasSendOrder);
    15.     }Else
    16.     {
    17.         DeleteOrderTickCounter = GetGlobalVar(0);
    18.         HasSendOrder = GetGlobalVar(1);
    19.     }

    20.     If(CurrentTime > (0.1459 - 0.0001*(BeforeMins-1))  AND BarStatus == 2  AND HasSendOrder == 0)
    21.     {
    22.         If(Data0.Close != InvalidNumeric  AND Data0.A_GetOpenOrderCount()>0) // 商品0全部撤單
    23.         {
    24.             Data0.A_DeleteOrder();
    25.             DeleteOrderTickCounter = 1;
    26.         }
    27.         If(Data1.Close != InvalidNumeric  AND Data1.A_GetOpenOrderCount()>0) // 商品1全部撤單
    28.         {
    29.             Data1.A_DeleteOrder();
    30.             DeleteOrderTickCounter = 1;
    31.         }
    32.         If(Data2.Close != InvalidNumeric  AND Data2.A_GetOpenOrderCount()>0) // 商品2全部撤單
    33.         {
    34.             Data2.A_DeleteOrder();
    35.             DeleteOrderTickCounter = 1;
    36.         }
    37.         DeleteOrderTickCounter = DeleteOrderTickCounter + 1;
    38.         SetGlobalVar(0,DeleteOrderTickCounter);

    39.         If(DeleteOrderTickCounter < 5) Return; // 撤單后需要延遲幾個Tick才平倉

    40.         tempPos = Data0.A_BuyPosition();
    41.         If(tempPos > 0) // 平多單
    42.         {
    43.             Data0.A_SendOrder(Enum_Sell,Enum_Exit,tempPos,Data0.Q_BidPrice-offSet*Data0.MinMove*Data0.PriceScale);
    44.         }
    45.         tempPos = Data0.A_SellPosition();
    46.         If(tempPos > 0) //平空單
    47.         {
    48.             Data0.A_SendOrder(Enum_Buy,Enum_Exit,tempPos,Data0.Q_AskPrice+offSet*Data0.MinMove*Data0.PriceScale);
    49.         }

    50.         tempPos = Data1.A_BuyPosition;
    51.         If(tempPos > 0) // 平多單
    52.         {
    53.             Data1.A_SendOrder(Enum_Sell,Enum_Exit,tempPos,Data1.Q_BidPrice-offSet*Data1.MinMove*Data1.PriceScale);
    54.         }
    55.         tempPos = Data1.A_SellPosition;
    56.         If(tempPos > 0) //平空單
    57.         {
    58.             Data1.A_SendOrder(Enum_Buy,Enum_Exit,tempPos,Data1.Q_AskPrice+offSet*Data1.MinMove*Data1.PriceScale);
    59.         }

    60.         tempPos = Data2.A_BuyPosition;
    61.         If(tempPos > 0) // 平多單
    62.         {
    63.             Data2.A_SendOrder(Enum_Sell,Enum_Exit,tempPos,Data2.Q_BidPrice-offSet*Data2.MinMove*Data2.PriceScale);
    64.         }
    65.         tempPos = Data2.A_SellPosition;
    66.         If(tempPos > 0) //平空單
    67.         {
    68.             Data2.A_SendOrder(Enum_Buy,Enum_Exit,tempPos,Data2.Q_AskPrice+offSet*Data2.MinMove*Data2.PriceScale);
    69.         }
    70.         HasSendOrder = 1;
    71.         SetGlobalVar(1,HasSendOrder);
    72.     }
    73. End

     

  • TB技術人員: 補充問題:
    模擬交易的程序已經寫好后,也測試通過了。現在只是需要用實際交易的A_SendOrder函數代替模擬測試程序里所有的Buy Sell BuytoCover 和SellShort就可以了,請問最標準和簡單的方法替代這些函數是怎么寫的呢? 例如替代Buy(Lots, Close) ;是直接用A_SendOrder(Enum_Buy,Enum_Entry,1,Q_BidPrice);嗎? 針對目前的超級圖表里的商品,股指期貨"IF888"需要在A_SendOrder之前加類似”data0."類似的標示嗎?非常感謝!

     

  • TB客服:
    Zye436 發表于 2016-3-2 16:38
    補充問題:
    模擬交易的程序已經寫好后,也測試通過了。現在只是需要用實際交易的A_SendOrder函數代替模擬測 ...

    A函數沒那么簡單的。
    每個動作都要打記號,不然就亂。
    還有A函數不可避免用close,這個價格是不斷變動的。那么你不處理好就會反復開倉或者反復止損。
    data0 只是代表你圖表中的商品,只有一個就無所謂,如果你疊加多個商品,就需要用data0 ,data1 來區分。

 

有思路,想編寫各種指標公式,程序化交易模型,選股公式,預警公式的朋友

可聯系技術人員 QQ: 511411198  點擊這里給我發消息進行 有償 編寫!不貴!點擊查看價格!


【字體: 】【打印文章】【查看評論

相關文章

    沒有相關內容
主站蜘蛛池模板: 亚洲欧美自拍另类图片色| 无码国产福利av私拍| 国产成人午夜片在线观看| 中美日韩在线网免费毛片视频| 正在播放国产女免费| 国产a级黄色毛片| 怡红院免费的全部视频| 婷婷五月综合缴情在线视频 | 偷窥无罪之诱人犯罪| 野花香高清在线观看视频播放免费| 国产美女19p爽一下| 一本一道久久a久久精品综合| 日韩制服丝袜电影| 亚洲成Aⅴ人片久青草影院| 精品久久久久中文字幕日本| 国产午夜久久精品| 青青青国产依人精品视频| 天天夜碰日日摸日日澡| 中文字幕在线观看亚洲| 最近中文字幕免费mv在线视频| 亚洲第一福利网站| 精品久久久一二三区| 国产三级在线播放| 免费看污成人午夜网站| 国产麻豆成人传媒免费观看| 一区二区三区免费在线视频| 日本a在线视频| 久久这里只有精品18| 欧美性猛交XXXX富婆| 人妻少妇中文字幕乱码| 俄罗斯精品bbw| 天天做天天爱天天一爽一毛片| 中文字幕看片在线a免费| 欧美黑人粗大xxxxbbbb| 又爽又黄有又色的视频| 韩国爸爸的朋友10整有限中字| 国产精品嫩草影院在线| 99久久免费精品高清特色大片 | 五月综合色婷婷在线观看| 美国式禁忌免费| 国产夫妻在线视频|