![]() |
在這個頁面顯示本主題全部的 52 個文章 |
奇狐社區論壇 (http://www.chiefox.com.tw/bbs/index.php)
- 問題交流 (http://www.chiefox.com.tw/bbs/forumdisplay.php?forumid=28)
-- 取區間高價 (http://www.chiefox.com.tw/bbs/showthread.php?threadid=20030)
取區間高價
請問我想取得自5ma跟42ma黃金交叉後, 自過黃金交叉高點的第一根k棒 到 跌破42ma 的第一根k棒 之間的最高價應如何寫? 謝謝版主!!
http://www.chiefox.com.tw/bbs/showt...ht=%B1%F8%A5%F3
tsh兄晚安, 請參考這一篇提問,應可順利解決您的問題.
BRGS
ma5:ma(c,5);
ma42:ma(c,42);
CKU:=ma5>ma42 and ref(ma5,1)<=ref(ma42,1) ;
XX:=BARSSINCE(CKU);
AA:=C>REF(H,XX);
BB:= C<MA42;
{UNum:=SUM(CKU,0);
DNum:=SUM(AA,0);
LNum:=sum(BB,0);
RK:=AA and DNum=DNum[datacount];
HK:=CKU and DNum=DNum[datacount];
LK:=BB and DNum=DNum[datacount];}
SL:=BARSSINCE(AA);
SR:=BARSSINCE(BB);
MH:hhv(H,sr+1); MH:=ref(MH,SL);
VERTLINE(MH) linedot;
我希望在取得AA 到 BB 區間最高價畫線, 但結果是每一K棒都畫線 , 請問應如何修改?謝謝版主!!
引用:
最初由 tsh 發表
ma5:ma(c,5);
ma42:ma(c,42);
CKU:=ma5>ma42 and ref(ma5,1)<=ref(ma42,1) ;
XX:=BARSSINCE(CKU);
AA:=C>REF(H,XX);
BB:= C<MA42;
{UNum:=SUM(CKU,0);
DNum:=SUM(AA,0);
LNum:=sum(BB,0);
RK:=AA and DNum=DNum[datacount];
HK:=CKU and DNum=DNum[datacount];
LK:=BB and DNum=DNum[datacount];}
SL:=BARSSINCE(AA);
SR:=BARSSINCE(BB);
MH:hhv(H,sr+1); MH:=ref(MH,SL);
VERTLINE(MH) linedot;
我希望在取得AA 到 BB 區間最高價畫線, 但結果是每一K棒都畫線 , 請問應如何修改?謝謝版主!!
請問我若要AA 跟 BB都是要符合第一次出現應如何寫? 謝謝版主!!
引用:
最初由 tsh 發表
請問我若要AA 跟 BB都是要符合第一次出現應如何寫? 謝謝版主!!
我試過還是一樣每跟都出現,麻煩版主了,謝謝!!
引用:
最初由 tsh 發表
我試過還是一樣每跟都出現,麻煩版主了,謝謝!!
範例如下:
MA5:ma(c,5);
MA42:ma(c,42);
CK1:=Cross(MA5,MA42);
CK1:=Cross(C,ref(H,barslast(CK1)));
CK2:=Cross(MA42,C);
CK1SP:=barslast(CK1);
CK2SP:=barslast(CK2);
MH:HHV(H,CK1SP+1);
MH:=ref(MH,CK2SP);
VERTLINE(CK1) colorred linedot;
VERTLINE(CK2) colorgreen linedot;
其中的 MH 就是您要的數值
謝謝版主!!
版主我是要 CK1到CK2間的最高價(MH)畫線, 不是畫過MA5跟MA42黃金交叉那跟K棒高點. 應如何更改?再麻煩你, 謝謝版主!!
引用:
最初由 tsh 發表
版主我是要 CK1到CK2間的最高價(MH)畫線, 不是畫過MA5跟MA42黃金交叉那跟K棒高點. 應如何更改?再麻煩你, 謝謝版主!!
不好意思, 我沒表達清楚, 附上圖, 再麻煩版主,謝謝!!
引用:
最初由 tsh 發表
不好意思, 我沒表達清楚, 附上圖, 再麻煩版主,謝謝!!
引用:
最初由 tsh 發表
MH要等於 綠色箭頭那跟高點,也是要畫紅色虛線的K棒
BH跟AH請看綠色跟藍色字體說明,謝謝!!
附圖
引用:
最初由 tsh 發表
BH跟AH請看綠色跟藍色字體說明,謝謝!!
附圖
了解意思了,謝謝版主!!
引用:
最初由 tsh 發表
了解意思了,謝謝版主!!
版主再請教你, 我若
1.只要最後一次符合條件出現就好,前面發生的就不用劃線
2.收盤價突破最後一次的高價設成預警
應如何更改程式? 麻煩你, 謝謝!!
引用:
最初由 tsh 發表
版主再請教你, 我若
1.只要最後一次符合條件出現就好,前面發生的就不用劃線
引用:
最初由 tsh 發表
版主再請教你, 我若
2.收盤價突破最後一次的高價設成預警
應如何更改程式? 麻煩你, 謝謝!!
MA5:ma(c,5);
MA42:ma(c,42);
CK1:=Cross(MA5,MA42);
CK1:=Cross(C,ref(H,barslast(CK1)));
CK2:=Cross(MA42,C);
CK1SP:=barslast(CK1);
CK2SP:=barslast(CK2);
MH:HHV(H,CK1SP+1) colorred linethick0;
MH:=ref(MH,CK2SP);
CK2N:=sum(CK2,0);
DWCK:=barslast(CK2N<>CK2N[datacount])>1;
PARTLINE(DWCK,MH) colorred;
VERTLINE(CK1) colorred linedot;
VERTLINE(CK2) colorgreen linedot;
CK1:=Cross(MA5,MA42); CK1:=Cross(C,ref(H,barslast(CK1)));
請教版主,我若想改成黃金交叉後,取第一根 H>ref(h,1) and l>ref(l,1) 到ck2間 取最高價, 應如何改,我改成以下所列,但無法呈現高價, 一直麻煩版主真不好意思
MA5:ma(c,5);
MA42:ma(c,42);
CK1:=Cross(MA5,MA42);
CK3:=h>ref(h,1) and l>ref(l,1);
CK2:=Cross(MA42,C);
CK3SP:=barslast(CK3);
CK2SP:=barslast(CK2);
MH:HHV(H,CK3SP+1) colorred linethick0;
MH:=ref(MH,CK2SP);
CK2N:=sum(CK2,0);
DWCK:=barslast(CK2N<>CK2N[datacount])>1;
PARTLINE(DWCK,MH) colorred;
VERTLINE(CK3) colorred linedot;
VERTLINE(CK2) colorgreen linedot;
引用:
最初由 tsh 發表
MA5:ma(c,5);
MA42:ma(c,42);
CK1:=Cross(MA5,MA42);
CK1:=Cross(C,ref(H,barslast(CK1)));
CK2:=Cross(MA42,C);
CK1SP:=barslast(CK1);
CK2SP:=barslast(CK2);
MH:HHV(H,CK1SP+1) colorred linethick0;
MH:=ref(MH,CK2SP);
CK2N:=sum(CK2,0);
DWCK:=barslast(CK2N<>CK2N[datacount])>1;
PARTLINE(DWCK,MH) colorred;
VERTLINE(CK1) colorred linedot;
VERTLINE(CK2) colorgreen linedot;
CK1:=Cross(MA5,MA42); CK1:=Cross(C,ref(H,barslast(CK1)));
請教版主,我若想改成黃金交叉後,取第一根 H>ref(h,1) and l>ref(l,1) 到ck2間 取最高價, 應如何改,我改成以下所列,但無法呈現高價, 一直麻煩版主真不好意思
MA5:ma(c,5);
MA42:ma(c,42);
CK1:=Cross(MA5,MA42);
CK3:=h>ref(h,1) and l>ref(l,1);
CK2:=Cross(MA42,C);
CK3SP:=barslast(CK3);
CK2SP:=barslast(CK2);
MH:HHV(H,CK3SP+1) colorred linethick0;
MH:=ref(MH,CK2SP);
CK2N:=sum(CK2,0);
DWCK:=barslast(CK2N<>CK2N[datacount])>1;
PARTLINE(DWCK,MH) colorred;
VERTLINE(CK3) colorred linedot;
VERTLINE(CK2) colorgreen linedot;
可以了,謝謝版主!!
請問若ck,ck1,ck2都出現後發生新的交叉(ck時,則重新計算取mh,而不是取前一個符合ck,ck1,ck2的最高價應如何寫? 謝謝版主!!
引用:
最初由 tsh 發表
請問若ck,ck1,ck2都出現後發生新的交叉(ck時,則重新計算取mh,而不是取前一個符合ck,ck1,ck2的最高價應如何寫? 謝謝版主!!
抱歉沒說清楚,我想判斷l>mh,但在ck2到l>mh間不能有均線死亡交叉,謝謝版主!!
引用:
最初由 tsh 發表
抱歉沒說清楚,我想判斷l>mh,但在ck2到l>mh間不能有均線死亡交叉,謝謝版主!!
請看附圖,謝謝!!
綠色箭頭發生死亡交叉,雖然 h>mh,則不符合預警條件,
必須沒有發生死亡交叉又過mh高才會預警
引用:
最初由 tsh 發表
請看附圖,謝謝!!
綠色箭頭發生死亡交叉,雖然 h>mh,則不符合預警條件,
必須沒有發生死亡交叉又過mh高才會預警
非常感謝版主!!
周末愉快!!

引用:
最初由 cgjj 發表
MA5:ma(c,5);
MA42:ma(c,42);
CK:=Cross(MA5,MA42); CKSP:=barslast(CK);
CK1:=MA5>MA42 and H>ref(h,1) and l>ref(l,1);
CK1:=CK1 and sum(CK1,CKSP+1)=1;
CK2:=Cross(MA42,C);
CK1SP:=barslast(CK1);
CK2SP:=barslast(CK2);
MH:HHV(H,CK1SP+1) colorred linethick0;
MH:=ref(MH,CK2SP);
CK2N:=sum(CK2,0);
DWCK:=barslast(CK2N<>CK2N[datacount])>1;
PARTLINE(DWCK,MH) colorred;
VERTLINE(CK1) colorred linedot;
VERTLINE(CK2) colorgreen linedot;
, 請問如何更改? 謝謝!!
引用:
最初由 tsh 發表
請教版主,我若想改成黃金交叉當根不算,取第一根 H>ref(h,1) and l>ref(l,1) 到ck2間 取最高價, 應如何改,原本程式會把黃金交叉當根k棒含在內, 因此若黃金交當根符合H>ref(h,1) and l>ref(l,1)時不會出現藍色線,還是出現紅色線(我增加 VERTLINE(CK) colorblue linedot;), 請問如何更改? 謝謝!!
好的,謝謝!!
引用:
最初由 tsh 發表
好的,謝謝!!
引用:
最初由 cgjj 發表
MA5:ma(c,5);
MA42:ma(c,42);
CK1:=Cross(MA5,MA42);
CK1:=Cross(C,ref(H,barslast(CK1)));
CK2:=Cross(MA42,C);
CK1SP:=barslast(CK1);
CK2SP:=barslast(CK2);
MH:HHV(H,CK1SP+1) colorred linethick0;
MH:=ref(MH,CK2SP);
CK2N:=sum(CK2,0);
DWCK:=barslast(CK2N<>CK2N[datacount])>1;
PARTLINE(DWCK,MH) colorred;
VERTLINE(CK1) colorred linedot;
VERTLINE(CK2) colorgreen linedot;
引用:
最初由 tsh 發表
請問mh 畫線並註明數字, 我增加下列指令. 但不知應如何讓數字只出現一次,不會每天都出現,謝謝版主!!
DRAWNUMBER(dwck,mh,mh,2);
再請教一下我若要出現在最右方(如前第5天出現高點畫線,那高點數字出現在今天右邊)
引用:
最初由 tsh 發表
再請教一下我若要出現在最右方(如前第5天出現高點畫線,那高點數字出現在今天右邊)
謝謝版主!!
版主再請較一下,我若在日線取得dwck 想在30分K線畫出DWCK,應如何編寫?
引用:
最初由 tsh 發表
版主再請較一下,我若在日線取得dwck 想在30分K線畫出DWCK,應如何編寫?
請問有辦法可以用同一個檔案,切到日線執行日線的畫線, 切到30分k時只畫高點?麻煩版主,謝謝!!
引用:
最初由 tsh 發表
請問有辦法可以用同一個檔案,切到日線執行日線的畫線, 切到30分k時只畫高點?麻煩版主,謝謝!!
引用:
最初由 tsh 發表
版主再請較一下,我若在日線取得dwck 想在30分K線畫出DWCK,應如何編寫?
1.日線先設成一個公式檔test
2.30分k 在設成另一個公式檔test1
mh:='test.mh#day'
.
.
所以我若要看日線需執行test, 要看30分k需執行test1, 可不可以我只執行test1, 當我切換到日線時可以看到test的程式執行結果, 切到30分k時可以看到test1的程式執行結果?
引用:
最初由 tsh 發表
1.日線先設成一個公式檔test
2.30分k 在設成另一個公式檔test1
mh:='test.mh#day'
.
.
所以我若要看日線需執行test, 要看30分k需執行test1, 可不可以我只執行test1, 當我切換到日線時可以看到test的程式執行結果, 切到30分k時可以看到test1的程式執行結果?
原碼:
MA5:=ma(c,5); MA42:=ma(c,42); CK:=Cross(MA5,MA42); CKSP:=barslast(CK); CK1:=MA5>MA42 and H>ref(h,1) and l>ref(l,1); CK1:=CK1 and sum(CK1,CKSP+1)=1; CK2:=Cross(MA42,C); CK1SP:=barslast(CK1); CK2SP:=barslast(CK2); MH:HHV(H,CK1SP+1); MH:=ref(MH,CK2SP); CK2N:=sum(CK2,0); MH:=MH*(BARSSINCE(CK2N=CK2N[datacount])>=0);
原碼:
if datatype=6 then begin //日線 MA5:=ma(c,5); MA42:=ma(c,42); CK:=Cross(MA5,MA42); CKSP:=barslast(CK); CK1:=MA5>MA42 and H>ref(h,1) and l>ref(l,1); CK1:=CK1 and sum(CK1,CKSP+1)=1; CK2:=Cross(MA42,C); CK1SP:=barslast(CK1); CK2SP:=barslast(CK2); MH:HHV(H,CK1SP+1) colorred linethick0; MH:=ref(MH,CK2SP); CK2N:=sum(CK2,0); MH:=MH*(BARSSINCE(CK2N=CK2N[datacount])>=0); end else if datatype=4 then begin //30分 MH:="TEST1_SUB.MH#DAY"; end; PARTLINE(MH>0,MH) colorred; DRAWNUMBER(barpos=lbound(MH),MH,MH,2) PXUP9 ALIGN2;
非常感謝版主!!
引用:
最初由 cgjj 發表
將
DRAWNUMBER(dwck,mh,mh,2);
改為
TT:=CK2 and CK2N=CK2N[datacount];
DRAWNUMBER(TT,mh,mh,2) PXUP9 ALIGN2;
引用:
最初由 tsh 發表
請問30分k也希望這樣畫法可以嗎?
| 全部時間均為台灣時間, 現在時間為08:00 | 在這個頁面顯示本主題全部的 52 個文章 |
Powered by: vBulletin Version 2.3.0 - Copyright©2000-, Jelsoft Enterprises Limited.
簡愛洋行 製作 Copyright 2003-. All Rights Reserved.