您現(xiàn)在的位置:程序化交易>> 期貨公式>> 金字塔等>> 金字塔知識>>正文內(nèi)容

后臺程序化交易的調(diào)用 [金字塔]

  • 咨詢內(nèi)容: 后臺程序化的函數(shù)一般解決算法交易, 就是開空開多等要如何避免滑點, 一般我是在圖表程序化設(shè)計測試好, 然后加上后臺程序化函數(shù)來交易。但是我的后臺開空開多平空平多的程序都是一樣的, 因為每個程序有很多開空開多點, 能把后臺程序化寫成一個函數(shù), 我要開空的時候直接調(diào)用該函數(shù)嗎?? ?而且我兩個程序調(diào)用下面的后臺程序化函數(shù)返回值會返回自己的數(shù)值嗎?
    我的后臺程序化源代碼:
    持倉限制:=min(持倉手數(shù), max(1,intpart(openint*持倉比例/100))); EMA_VolDay:=STKINDI('','VOL.MA1(5,10,20)',0,6,-1)*成交量比例/1000;//找昨天的成交量5日均線量, 再乘以成交量比例 多頭保證金:C*TACCOUNT(41);// 是多頭保證金率; 空頭保證金:C*TACCOUNT(42);// 是空頭保證金率; 多頭開倉資金數(shù):intpart(1000000/(C*TACCOUNT(41)*multiplier)*資金占比/100);//是資金占比, 例如10, 就是占用資金100W占比10%, 動用了保證金10W 多頭開倉數(shù):MIN(min(多頭開倉資金數(shù),min(EMA_VolDay, 持倉限制)),限倉*0.1); 空頭開倉資金數(shù):intpart(1000000/(C*TACCOUNT(42)*multiplier)*資金占比/100); 空頭開倉數(shù):MIN(min(空頭開倉資金數(shù),min(EMA_VolDay, 持倉限制)),限倉*0.1); //如果要開空, 就執(zhí)行下面開空語句 //注意holding是策略的理論持倉,他不管實際倉位例如我想開單是10的, 那就用10, 100萬的, 就用100. 最高就是100W。 //持倉比例和成交量的比例, 所以這兩者一般不會去動, 除非是一些非主力合約
    ///1.如果之前的開空持倉剩余數(shù)并且比現(xiàn)在空頭開倉數(shù)還要多, 那就用之前的開空持倉剩余數(shù),不需要開空。 IF TSELLHOLDINGEX('','',1)>=空頭開倉數(shù) THEN 空頭開倉數(shù):=TSELLHOLDINGEX('','',1);
    //2.如果有平空掛單,之前的開空持倉剩余數(shù)比現(xiàn)在空頭開倉數(shù)少, 總空頭持倉比現(xiàn)在開倉數(shù)要多,那就用把要撤的單取消掉。? IF TSELLHOLDINGEX('','',2)>=空頭開倉數(shù) AND TSELLHOLDINGEX('','',1)<空頭開倉數(shù) THEN? BEGIN ? ? TCANCEL(TSELLHOLDINGEX('','',3)>0,4); ? ? 空頭開倉數(shù):=TSELLHOLDINGEX('','',2); END //3.總空頭持倉比現(xiàn)在開倉數(shù)要少 IF TSELLHOLDINGEX('','',2)<=空頭開倉數(shù) THEN BEGIN
    TCANCEL(TSELLHOLDINGEX('','',3)>0,4); 空頭開倉數(shù):=INTPART(空頭開倉數(shù)-TSELLHOLDINGEX('','',1)); //3.1 達到開空條件, 先檢測程序化是否平衡先, 如果是平衡狀態(tài), 開始空 ? ? IF(INTPART(空頭開倉數(shù))<1 ,1,INTPART(空頭開倉數(shù)));//空頭開倉數(shù)不能為0 //a.看成交量 //b.看賣一和買一的中間加個 DYNAINFO(34)賣一價;DYNAINFO(28)買一價; DYNAINFO(208)最小變動單位; //成交量比例是自己設(shè)置的, 取5日的平均數(shù)。 千分之5那么多, 建議分兩次下而且用加倉的方式來操作。
    //a1 ? ? IF 空頭開倉數(shù)>=80 or 成交量比例>=4 THEN ? ? BEGIN //a1b1? ? ? ? ? ? ?IF DYNAINFO(34)-DYNAINFO(28)>3*DYNAINFO(208) THEN? ? ? ?BEGIN? ? ? TBUYSHORT(1,空頭開倉數(shù)/8,LMT,DYNAINFO(34)+DYNAINFO(208)),NOATTACK; TBUYSHORT(1,空頭開倉數(shù)/8,LMT,DYNAINFO(34)),NOATTACK; TBUYSHORT(1,空頭開倉數(shù)/8,LMT,DYNAINFO(34)-DYNAINFO(208)),NOATTACK; TBUYSHORT(1,空頭開倉數(shù)/8,LMT,DYNAINFO(34)-2*DYNAINFO(208)),NOATTACK; TBUYSHORT(1,空頭開倉數(shù)/8,LMT,DYNAINFO(34)-3*DYNAINFO(208)),NOATTACK; TBUYSHORT(1,空頭開倉數(shù)/8,LMT,DYNAINFO(28)+3*DYNAINFO(208)),NOATTACK; TBUYSHORT(1,空頭開倉數(shù)/8,LMT,DYNAINFO(28)+2*DYNAINFO(208)),NOATTACK; ? ? TBUYSHORT(1,空頭開倉數(shù)/8,LMT,DYNAINFO(28)+DYNAINFO(208)),NOATTACK; ? ? ? ? ?END //a1b2 ? ? ? ? ?IF DYNAINFO(34)-DYNAINFO(28)>DYNAINFO(208) AND DYNAINFO(34)-DYNAINFO(28)<=3*DYNAINFO(208) THEN BEGIN? ? ? ? TBUYSHORT(1,空頭開倉數(shù)/4,LMT,DYNAINFO(34)+DYNAINFO(208)),NOATTACK;?? ? ? ?TBUYSHORT(1,空頭開倉數(shù)/4,LMT,DYNAINFO(34)),NOATTACK; ? ? ? ? ? ? ?TBUYSHORT(1,空頭開倉數(shù)/4,LMT,DYNAINFO(34)-DYNAINFO(208)),NOATTACK; ? ? ? ? ? ? ?TBUYSHORT(1,空頭開倉數(shù)/4,LMT,DYNAINFO(28)+DYNAINFO(208)),NOATTACK; ? ? ? ? ?END //a1b3? ? ? ? ? ? ? ? ?IF DYNAINFO(34)-DYNAINFO(28)=DYNAINFO(208) THEN ? ? ? ? ?BEGIN? ? ? ? ? IF DYNAINFO(25)>DYNAINFO(31) THEN? ? ? ? BEGIN //DYNAINFO(31) 是賣一量, DYNAINFO(25) 是買一量,DYNAINFO(34)賣一價;DYNAINFO(28)買一價; ? ? ? ? ? TBUYSHORT(1,空頭開倉數(shù)/3,LMT,DYNAINFO(34)+DYNAINFO(208)),NOATTACK; ? ? ? ? TBUYSHORT(1,2*空頭開倉數(shù)/3,LMT,DYNAINFO(34)),NOATTACK; ? ? ? ? END ? ? ? ? ? ? IF DYNAINFO(25)<DYNAINFO(31) THEN ? ? ? ? ? ? BEGIN ? ? TBUYSHORT(1,空頭開倉數(shù)/2,LMT,DYNAINFO(34)),NOATTACK; ? ? ? ? TBUYSHORT(1,空頭開倉數(shù)/2,LMT,DYNAINFO(28)),NOATTACK; ? ? END ? ? ? ? ? END? ? ? ? ? END? ?//a2? ? ? ?IF 空頭開倉數(shù)<80 AND 空頭開倉數(shù)>=12 AND 成交量比例<4 OR 成交量比例>=2 AND 成交量比例<4 THEN? ?? ? ?BEGIN //a2b1 ? ? ? IF DYNAINFO(34)-DYNAINFO(28)>3*DYNAINFO(208) THEN? ? BEGIN? ?TBUYSHORT(1,空頭開倉數(shù)/3,LMT,DYNAINFO(28)+3*DYNAINFO(208)),NOATTACK; TBUYSHORT(1,空頭開倉數(shù)/3,LMT,DYNAINFO(28)+2*DYNAINFO(208)),NOATTACK; ? ? TBUYSHORT(1,空頭開倉數(shù)/3,LMT,DYNAINFO(28)+DYNAINFO(208)),NOATTACK; ? ? ? END //a2b2 ? ? ? IF DYNAINFO(34)-DYNAINFO(28)>DYNAINFO(208) AND DYNAINFO(34)-DYNAINFO(28)<=3*DYNAINFO(208) THEN ? BEGIN? ? ? ? ?TBUYSHORT(1,空頭開倉數(shù)/3,LMT,DYNAINFO(34)),NOATTACK; ? ? ? ? ? ? ?TBUYSHORT(1,空頭開倉數(shù)/3,LMT,DYNAINFO(34)-DYNAINFO(208)),NOATTACK; ? ? ? ? ? ? ?TBUYSHORT(1,空頭開倉數(shù)/3,LMT,DYNAINFO(28)+DYNAINFO(208)),NOATTACK; ? ? ? END //a2b3 ? ? ? IF DYNAINFO(34)-DYNAINFO(28)=DYNAINFO(208)THEN ? ? ? BEGIN//DYNAINFO(31) 是賣一量, DYNAINFO(25) 是買一量,DYNAINFO(34)賣一價;DYNAINFO(28)買一價; DYNAINFO(208)最小變動單位; ? ? ? IF DYNAINFO(25)>DYNAINFO(31) THEN ? ? ? ? BEGIN ? ? ? ? TBUYSHORT(1,空頭開倉數(shù)*2/3,LMT,DYNAINFO(34)),NOATTACK; ? ? ? ? TBUYSHORT(1,空頭開倉數(shù)/3,LMT,DYNAINFO(28)),NOATTACK; ? ? ? ? END ? ? ? IF DYNAINFO(25)<DYNAINFO(31) THEN ? ? ? ? BEGIN ? ? ? ? TBUYSHORT(1,空頭開倉數(shù)/3,LMT,DYNAINFO(34)),NOATTACK; ? ? ? ? TBUYSHORT(1,空頭開倉數(shù)*2/3,LMT,DYNAINFO(28)),NOATTACK; ? END //? ? ? IF DYNAINFO(25)>DYNAINFO(31) THEN TBUYSHORT(1,空頭開倉數(shù),LMT,DYNAINFO(34)),NOATTACK;?? //? ? IF DYNAINFO(25)<DYNAINFO(31) THEN TBUYSHORT(1,空頭開倉數(shù),LMT,DYNAINFO(28)),NOATTACK; ? END ? ?END ?//a3? ? ? ? ?IF 空頭開倉數(shù)<12 AND 空頭開倉數(shù)>3 AND 成交量比例<=2 THEN //注意holding是策略的理論持倉,他不管實際倉位? ? ? ?BEGIN //a3b1 ? ? ? IF DYNAINFO(34)-DYNAINFO(28)>=2*DYNAINFO(208) THEN ? BEGIN? ? ? ? ? ? ?TBUYSHORT(1,空頭開倉數(shù)/2,LMT,DYNAINFO(34)-DYNAINFO(208)),NOATTACK; ? ? ? ? ? ?TBUYSHORT(1,空頭開倉數(shù)/2,LMT,DYNAINFO(28)+DYNAINFO(208)),NOATTACK; ? ? ? END ?//a3b2? ? ? ? ? ? IF DYNAINFO(34)-DYNAINFO(28)=DYNAINFO(208) THEN ? ? ? BEGIN //DYNAINFO(31) 是賣一量, DYNAINFO(25) 是買一量,DYNAINFO(34)賣一價;DYNAINFO(28)買一價; ? ? ? ? ? IF DYNAINFO(25)>DYNAINFO(31) THEN TBUYSHORT(1,空頭開倉數(shù),LMT,DYNAINFO(34)),NOATTACK;?? ? ? ? IF DYNAINFO(25)<DYNAINFO(31) THEN TBUYSHORT(1,空頭開倉數(shù),LMT,DYNAINFO(28)),NOATTACK; ? ? ? END ? ?END?? //a4? IF 空頭開倉數(shù)<=3 AND 成交量比例<=1 THEN BEGIN //DYNAINFO(31) 是賣一量, DYNAINFO(25) 是買一量,DYNAINFO(34)賣一價;DYNAINFO(28)買一價; ? ? ? ? ? //IF DYNAINFO(25)>DYNAINFO(31) THEN TBUYSHORT(1,空頭開倉數(shù),LMT,DYNAINFO(34));?? ? ? ? //IF DYNAINFO(25)<DYNAINFO(31) THEN TBUYSHORT(1,空頭開倉數(shù),LMT,DYNAINFO(28)); //a4b1 ? ? ? IF DYNAINFO(34)-DYNAINFO(28)>=2*DYNAINFO(208) THEN ? BEGIN? ? ? ? ? ? ? IF DYNAINFO(25)>DYNAINFO(31) THEN TBUYSHORT(1,多頭開倉數(shù),LMT,DYNAINFO(34)-DYNAINFO(208)); IF DYNAINFO(25)<DYNAINFO(31) THEN TBUYSHORT(1,多頭開倉數(shù),LMT,DYNAINFO(28)+DYNAINFO(208)); ? ? ? END //a4b2 IF DYNAINFO(34)-DYNAINFO(28)=DYNAINFO(208) THEN BEGIN?? IF DYNAINFO(25)>DYNAINFO(31) THEN TBUYSHORT(1,多頭開倉數(shù),LMT,DYNAINFO(34)); IF DYNAINFO(25)<DYNAINFO(31) THEN TBUYSHORT(1,多頭開倉數(shù),LMT,DYNAINFO(28)); ? ? ?END END END

    ?

  • 金字塔客服: ?“能把后臺程序化寫成一個函數(shù), 我要開空的時候直接調(diào)用該函數(shù)嗎” 這個是不行的。 你只能直接運行這個后臺程序。

    ?

    ?來源:程序化久久網(wǎng)( www.tumamayizhan.com )

  • 用戶回復(fù): 也就是如果我在某個程序有8次開空, 那這8次 的開空程序都要加上這段算法交易上去??

    ?

  • 網(wǎng)友回復(fù): ?是的。引用通常是引用純粹的計算指標或者圖表模型會比較穩(wěn)定。

 

有思路,想編寫各種指標公式,交易模型,選股公式,還原公式的朋友

可聯(lián)系技術(shù)人員 QQ: 262069696  點擊在線交流或微信號:cxh99cxh99  進行 有償收費 編寫!

怎么收費,代編流程等詳情請點擊閱讀!

(注:由于人數(shù)限制,QQ或微信請選擇方便的一個聯(lián)系我們就行,加好友時請簡單備注下您的需求,否則無法通過。謝謝您!)


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

相關(guān)文章

    沒有相關(guān)內(nèi)容
主站蜘蛛池模板: 中文字幕美日韩在线高清| 日韩影院在线观看| 欧洲精品免费一区二区三区| 日韩一卡2卡3卡4卡| 成人a免费α片在线视频网站| 大桥未久aⅴ一区二区| 国产私拍福利精品视频| 四虎成人免费影院网址| 亚洲色欲色欲综合网站| 亚欧成人中文字幕一区| 中文在线观看国语高清免费| 87福利电影网| 视频一区视频二区制服丝袜| 男的把j放进女人下面视频免费| 欧美一区二区三区成人片在线| 无码A级毛片日韩精品| 在线va无码中文字幕| 国产午夜视频高清| 人妻少妇乱子伦精品| 久久精品视频99| ass美女下部精品图片| 黑白配hd视频| 玖玖精品在线视频| 日韩亚洲av无码一区二区三区 | 亚洲日本在线看片| 久久久久女教师免费一区| 999影院成人在线影院| 视频黄页在线观看| 欧美性猛交xxx黑人猛交| 成在线人视频免费视频| 国产激情久久久久影| 免费在线看黄网址| 久久久无码精品亚洲日韩蜜桃| 97无码免费人妻超级碰碰夜夜| 色台湾色综合网站| 欧洲成人在线视频| 在线观看欧美国产| 国产99久久精品一区二区| 九九久久国产精品| 99久久精品免费看国产| 美女免费网站xx美女女女女女女bbbbbb毛片 |