人人爽天天爽夜夜爽qc-人人爽天天爽夜夜爽曰-人人天天爱天天做天天摸-人人天天夜夜-色网站在线-色网站在线看
打印本文
關閉窗口
后臺程序化交易的調(diào)用
作者:金字塔 來源:cxh99.com 發(fā)布時間:2021年01月09日
咨詢內(nèi)容:
后臺程序化的函數(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)最小變動單位;
//成交量比例是自己設置的, 取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.kzuj.com.cn )
用戶回復:
也就是如果我在某個程序有8次開空, 那這8次 的開空程序都要加上這段算法交易上去??
?
網(wǎng)友回復:
?是的。引用通常是引用純粹的計算指標或者圖表模型會比較穩(wěn)定。
打印本文
關閉窗口
主站蜘蛛池模板:
青青草娱乐
|
亚洲国产成人精品激情
|
国产成人www
|
一区二区三区国产精品
|
久久精品九九
|
成年女人免费又黄又爽视频
|
人人做人人爽人人爱秋霞影视
|
簧片视频在线观看
|
怡春院欧美杂交a
|
欧美成人观看免费完全
|
日日摸狠狠的摸夜夜摸
|
日韩无砖专区体验区
|
亚洲一区二区三区精品国产
|
狍和美女一级aa毛片
|
九九热视频在线播放
|
国产一区二区三区成人久久片
|
午夜精品久久久久久久
|
最近最新的日本免费
|
欧美视频在线观看免费
|
亚洲国产精品一区二区九九
|
free女厕所vedio中国
|
欧洲一区麻豆文化传媒
|
97国产成人精品免费视频
|
最近免费字幕中文大全视频
|
久久精品香蕉视频
|
97影院午夜午夜伦不卡
|
久草视频手机在线观看
|
在线播放成人
|
最近2019免费中文字幕8
|
久久国产午夜精品理论篇小说
|
伊人天天干
|
欧美日韩在线国产
|
成人精品视频一区二区三区
|
欧美一区精品
|
2020国产成人免费视频
|
伊人狠狠色j香婷婷综合
|
丰满肥胖大码中年熟妇毛片
|
欧美精品一卡二卡
|
深夜天堂
|
香蕉视频黄网站
|
日本xxxxx在线观看
|