代碼求助,恒溫器代碼求助!急急急 [文華財經]
- 咨詢內容:
代碼
//策略:恒溫器系統
//類型:中長期通道突破
//版本:1.0
//修訂時間:2012.11.6
//Designed By Rogarz//中間變量
input:m(50,5,300,30),N(1.25,0.1,10,0.1),ss(1,1,100,1),k1(0.5,0.1,1,0.1),k2(0.75,0.1,1,0.1);
variable:A:=0;//0表示倉位是在趨勢模式下下單 1表示在震蕩模式下下單
MID : MA(CLOSE,M);//布林中軌
UPPER:MID + N*STD(CLOSE,M);//布林上軌
LOWER:MID - N*STD(CLOSE,M);//布林下軌
今開:=callstock(stklabel,vtopen,6,0);
CMI:=abs(close-ref(close,29))/(hhv(high,30)-LLV(L,30))*100;//0-100 取值越大,說明趨勢越強,CMI<20震蕩模式,反之為趨勢
關鍵價:(high+low+close)/3;//關鍵價的計算,國外常稱作中樞價格(pivot point)
ATR10:=ma(tr,10);
3日均低價:=ma(L,3);3日均高價:=ma(h,3);
手數:=ss;
//交易條件
if C<關鍵價 then begin
趨買市開多平空條件:=C>max(今開+k1*ATR10,3日均低價);
趨買市開空平多條件:=C<min(今開-k2*ATR10,3日均高價);
end
if c>關鍵價 then begin
趨賣市開多平空條件:=C>max(今開+k2*atr10,3日均低價);
趨賣市開空平多條件:=C<min(今開-k1*atr10,3日均高價);
end趨勢開多條件:=c>upper;
趨勢開空條件:=c<lower;
趨勢平多條件:=c<mid;
趨勢平空條件:=c>mid;震蕩多單平倉條件:=c<=enterprice-3*atr10;
震蕩空單平倉條件:=c>=enterprice+3*ATR10;
//交易系統
if cmi<20 then begin {震蕩模式}
if C<關鍵價 then begin
趨買市平空:sellshort(趨買市開多平空條件 and holding<=0,手數,market);
趨買市平多:sell(趨買市開空平多條件 and holding>=0,手數,market);
趨買市開多:buy(趨買市開多平空條件 and holding<=0,手數,market);
趨買市開空:buyshort(趨買市開空平多條件 and holding>=0,手數,market);
A:=1;
end
if c>關鍵價 then begin
趨賣市平空:sellshort(趨賣市開多平空條件 and holding<=0,手數,market);
趨賣市平多:sell(趨賣市開空平多條件 and holding>=0,手數,market);
趨賣市開多:buy(趨賣市開多平空條件 and holding<=0,手數,market);
趨賣市開空:buyshort(趨賣市開空平多條件 and holding>=0,手數,market);
a:=1;
end
ENdif cmi>=20 then BEGIN {趨勢模式}
if a=1 then begin //趨勢模式下 原震蕩模式下 倉位處理
震蕩多單平倉:sell(震蕩多單平倉條件 and holding>0,手數,market);
震蕩空單平倉:sellshort(震蕩空單平倉條件 and holding<0,手數,market);
a:=0;
end
if a=0 then begin
趨勢平空:sellshort(趨勢平空條件 and holding<0,手數,market);
趨勢平多:sell(趨勢平多條件 and holding>0,手數,market);
趨勢開多:buy(趨勢開多條件 and holding<=0,手數,market);
趨勢開空:buyshort(趨勢開空條件 and holding>=0,手數,market);
A:=0;
end
ENd
//注意先平后開原則
在論壇看見寫的代碼如下,可是不能識別代碼啊,看看能否幫我改寫一下,在wh6上使用謝謝!
//新建指標 JZT3ZD:=HHV(L,3);
3ZG:=LLV(H,3);
3JD:=MA(L,3);
3JG:=MA(H,3);GJJ:REF((HIGH+LOW+CLOSE)/3,1);
//
M:=50;
N:=1.25;
K1:=0.5;
K2:=0.75;
MID :MA(CLOSE,M);//布林中軌
TOP:MID + N*STD(CLOSE,M);//布林上軌
BOTTOM:MID - N*STD(CLOSE,M);//布林下軌
N1:=BARSLAST(DATE<>REF(DATE,1))+1;
KP:=REF(O,N1-1);
CMIA:=ABS(CLOSE-REF(CLOSE,29))/(HHV(HIGH,30)-LLV(L,30))*100;
CMI:=MA(CMIA,2);//TR:=MAX(MAX((HIGH-LOW),ABS(REF(CLOSE,1)-HIGH)),ABS(REF(CLOSE,1)-LOW));
ATR:=MA(TR,10);#IMPORT[DAY,1,JZT] AS VAR
3D:=VAR.3JD;
3G:=VAR.3JG;
ZG:=VAR.3ZG;
ZD:=VAR.3ZD;
PIVOT:VAR.GJJ;
QS:MAX(KP+0.5*ATR,3D);
QX:MIN(KP-0.5*ATR,3G);
//引用日周期均線
//震蕩市1
CMI<=20&&C<PIVOT&&C>MAX(KP+0.5*ATR,3D)&&BKVOL=0,BPK('A');//
CMI<=20&&C<PIVOT&&C<MIN(KP-0.75*ATR,3G)&&SKVOL=0,SPK('A');
//震蕩市2
CMI<=20&&C>PIVOT&&C>MAX(KP+0.75*ATR,ZD)&&BKVOL=0,BPK('A');
CMI<=20&&C>PIVOT&&C<MIN(KP-0.5*ATR,ZG)&&SKVOL=0,SPK('A');//
C<BKPRICE-3*ATR,SP('A');
C>SKPRICE+3*ATR,BP('A');//趨勢
C>TOP&&BKVOL=0,BK('B');
C<BOTTOM&&SKVOL=0,SK('B');
C<MID,SP('B');
C>MID,BP('B');AUTOFILTER;
- 文華技術人員:
wh6不支持跨周期引用的,您需要加載在wh4或wh8.2實現
- 文華客服:
我在wh8 也用不上
- 網友回復:
//新建指標 JZT
3ZD:=HHV(L,3);
3ZG:=LLV(H,3);
3JD:=MA(L,3);
3JG:=MA(H,3);GJJ:REF((HIGH+LOW+CLOSE)/3,1);
//
這一段是需要新建一個名稱為JZT的指標的。
下面的程序再加載在主圖上。
我們這里是測試成功的。
有思路,想編寫各種指標公式,程序化交易模型,選股公式,預警公式的朋友
可聯系技術人員 QQ: 511411198 進行 有償 編寫!(不貴!點擊查看價格!)
相關文章
-
沒有相關內容