圖表改后臺(tái) [金字塔]
咨詢內(nèi)容:
GLOBALVARIABLE:zs=c,maxhl=c;
//顧比倒數(shù)線
DISTL:=NEWLBARS(L,1);
DISTH:=NEWHBARS(H,1);
HI20:=REF(HHV(H,20),1);
LO20:=REF(LLV(L,20),1);
GBD1:=REF(L,DISTL);
GBD2:=REF(GBD1,DISTL);
GBD:=IF(GBD2>0,MAX(LLV(L,20),GBD2),LLV(L,20));
GBG1:=REF(H,DISTH);
GBG2:=REF(GBG1,DISTH);
GBG:=IF(GBG2>0,MIN(HHV(H,20),GBG2),HHV(H,20));
//SAR指標(biāo)
Sar1:=SAR(10,2,20){,CIRCLEDOT};
//MACD指標(biāo)
DIFF := EMA(CLOSE,12) - EMA(CLOSE,26);
DEA:= EMA(DIFF,9);
MACD := 2*(DIFF-DEA);
//交易條件
con1:any(ref(Sar1>high,1) and Sar1<high,3)=1; //最近3周期,有SAR向上突破K線
con2:any(cross(diff,dea),3)=1 and diff<5; //最近3周期,MACD在0線附近金叉
//下單模塊
//止盈止損平倉(cāng):下破移動(dòng)止損線后離場(chǎng)
if tholding>0 and c<zs then tsell(1,100,mkt);
//成本止損
zsc:c<tavgenterpriceex2('','',0)*0.96;
if tholding>0 and zsc then tsell(1,100,mkt);
//開多倉(cāng):SAR向上突破K線,MACD在0線附近金叉
if con1 and con2and ttotaldaytrade<1 then
begin
tbuy(tbuyholding(1)=0,100,mkt);
zs:=gbd; //調(diào)用顧比倒數(shù)線做為止損
maxhl:=h; //記錄當(dāng)時(shí)的高點(diǎn)
end
if tholding>0 and h>maxhl then//創(chuàng)新高后,重新定位離場(chǎng)位,以實(shí)現(xiàn)浮動(dòng)止損
begin
zs:=gbd;
maxhl:=h;
end
止損線:zs,colorred;
老師,這段程序這樣改成后臺(tái)對(duì)嗎?為什么圖表顯示下破止損線很多了,可后臺(tái)并不執(zhí)行呢?是全局變量設(shè)置的問題嗎?謝謝!
后臺(tái)的GLOBALVARIABLE全局變量是從你啟動(dòng)程序那會(huì)開始初始化,然后開始計(jì)算
他們機(jī)制不一樣,圖表你可以當(dāng)成歷史信息都要記錄進(jìn)來,后臺(tái)則是你啟動(dòng)開始做記錄
如果不好理解,你可以考慮使用圖表和后臺(tái)混搭模式,所有信號(hào)按照?qǐng)D表運(yùn)行,http://www.weistock.com/bbs/dispbbs.asp?boardid=17&id=173706
在下單地方用后臺(tái)下單命令技術(shù)交流:
多謝您!我學(xué)習(xí)一下 技術(shù)交流:
老師,股票在圖表交易中如果想控制符合條件當(dāng)日只買入一次,holding=0 可以嗎?后臺(tái)是要用到TBUYHOLDING(1)=0函數(shù)的。
//顧比倒數(shù)線
DISTL:=NEWLBARS(L,1);
DISTH:=NEWHBARS(H,1);
HI20:=REF(HHV(H,20),1);
LO20:=REF(LLV(L,20),1);
GBD1:=REF(L,DISTL);
GBD2:=REF(GBD1,DISTL);
GBD:=IF(GBD2>0,MAX(LLV(L,20),GBD2),LLV(L,20));
GBG1:=REF(H,DISTH);
GBG2:=REF(GBG1,DISTH);
GBG:=IF(GBG2>0,MIN(HHV(H,20),GBG2),HHV(H,20));
//SAR指標(biāo)
Sar1:=SAR(10,2,20){,CIRCLEDOT};
//MACD指標(biāo)
DIFF := EMA(CLOSE,12) - EMA(CLOSE,26);
DEA:= EMA(DIFF,9);
MACD := 2*(DIFF-DEA);
//交易條件
con1:any(ref(Sar1>high,1) and Sar1<high,3)=1; //最近3周期,有SAR向上突破K線
con2:any(cross(diff,dea),3)=1 and diff<5; //最近3周期,MACD在0線附近金叉
//下單模塊
//止盈止損平倉(cāng):下破移動(dòng)止損線后離場(chǎng)
if tholding>0 and c<zs then tsell(1,100,mkt);
//成本止損
zsc:c<tavgenterpriceex2('','',0)*0.96;
if tholding>0 and zsc then tsell(1,100,mkt);
//開多倉(cāng):SAR向上突破K線,MACD在0線附近金叉
if con1 and con2and ttotaldaytrade<1 then
begin
tbuy(tbuyholding(1)=0,100,mkt);
zs:=gbd; //調(diào)用顧比倒數(shù)線做為止損
maxhl:=h; //記錄當(dāng)時(shí)的高點(diǎn)
end
if tholding>0 and h>maxhl then//創(chuàng)新高后,重新定位離場(chǎng)位,以實(shí)現(xiàn)浮動(dòng)止損
begin
zs:=gbd;
maxhl:=h;
end
止損線:zs,colorred;
老師,這段程序這樣改成后臺(tái)對(duì)嗎?為什么圖表顯示下破止損線很多了,可后臺(tái)并不執(zhí)行呢?是全局變量設(shè)置的問題嗎?謝謝!
?
?來源: www.tumamayizhan.com
金字塔資深技術(shù): 圖表的variable是從歷史上開始不斷計(jì)算,每次都是從第一根開始后臺(tái)的GLOBALVARIABLE全局變量是從你啟動(dòng)程序那會(huì)開始初始化,然后開始計(jì)算
他們機(jī)制不一樣,圖表你可以當(dāng)成歷史信息都要記錄進(jìn)來,后臺(tái)則是你啟動(dòng)開始做記錄
如果不好理解,你可以考慮使用圖表和后臺(tái)混搭模式,所有信號(hào)按照?qǐng)D表運(yùn)行,http://www.weistock.com/bbs/dispbbs.asp?boardid=17&id=173706
在下單地方用后臺(tái)下單命令
資深技術(shù)02 發(fā)表于 2021-12-21 13:05
圖表的variable是從歷史上開始不斷計(jì)算,每次都是從第一根開始
后臺(tái)的GLOBALVARIABLE全局變量是從你啟動(dòng)程 ...
多謝您!我學(xué)習(xí)一下
?
103820 發(fā)表于 2021-12-21 13:44
多謝您!我學(xué)習(xí)一下
老師,股票在圖表交易中如果想控制符合條件當(dāng)日只買入一次,holding=0 可以嗎?后臺(tái)是要用到TBUYHOLDING(1)=0函數(shù)的。
有思路,想編寫各種指標(biāo)公式,交易模型,選股公式,還原公式的朋友
可聯(lián)系技術(shù)人員 QQ: 262069696 或微信號(hào):cxh99cxh99 進(jìn)行 有償收費(fèi) 編寫!
(怎么收費(fèi),代編流程等詳情請(qǐng)點(diǎn)擊閱讀!)
(注:由于人數(shù)限制,QQ或微信請(qǐng)選擇方便的一個(gè)聯(lián)系我們就行,加好友時(shí)請(qǐng)簡(jiǎn)單備注下您的需求,否則無法通過。謝謝您!)
相關(guān)文章
-
沒有相關(guān)內(nèi)容