![]() |
在這個頁面顯示本主題全部的 78 個文章 |
奇狐社區論壇 (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=23494)
畫箱問題
版主你好
//
x:=H>ref(H,1) and H>refx(H,1);
近1高:ref(H,barslast(X)) linethick1 COLORYELLOW;
近2高:ref(H,sumbars(X,2)-1) linethick;
近3高:ref(H,sumbars(X,3)-1) linethick;
//
Y:LOW<REF(LOW,1) and LOW<REFX(LOW,1);
近1低:REF(LOW,BARSLAST(y)) linethick1 COLORGREEN;
近2低:REF(LOW,SUMBARS(y,2)-1) linethick COLORGREEN;
近3低:REF(LOW,SUMBARS(y,3)-1) linethick COLORYELLOW;
//
M1:IF(近1低<近2低 OR LOW<近1低,CROSS(近1低,LOW),0)COLORGRAY;
VERTLINE(M1)LINEDOT COLORWHITE;
//
RCk:=M1;//當M1破近1低時,往前取這區間的高點與低點範圍K棒,畫一個方框
SP:=REF(BARSLAST(REF(Y,1)=0 AND Y=1),1)COLORWHITE LINETHICK;
BHH:=HHV(H,SP+1); BHH:=SETVAL(RCK,BHH,-SP,BHH);
BLL:=LLV(L,SP+1); BLL:=SETVAL(RCK,BLL,-SP,BLL);
LCk:=SETVAL(RCK,0,-SP,1);
LCk:=SETVAL(RCK and SP>0,LCK,-SP+1,0);
//畫框-M1
DRAWSL(RCk,BHH,0,SP,1) COLORMAGENTA LINEDOT;
DRAWSL(RCk,BLL,0,SP,1) COLORMAGENTA LINEDOT;;
STICKLINE(RCk or LCK,BLL,BHH,0,0) COLORMAGENTA LINEDOT;
畫箱規則說明:
1)垂直虛線--為當根最低價跌破前一個低點位置
2)當符合此情況時,往前找前一個低點及前一個高點畫箱子(範圍包含跌破那一根K棒)
3)以前一個低點當起始點,往右畫至跌破的那一根K棒為止
4)目前箱子只能找到高點及跌破的那一根畫箱,低點無法納進來,想了好久還是無法解決?麻煩版主指導一下......謝謝
註:問題如圖片
__________________
chiu
回覆: 畫箱問題
引用:
最初由 a9681054 發表
版主你好
//
x:=H>ref(H,1) and H>refx(H,1);
近1高:ref(H,barslast(X)) linethick1 COLORYELLOW;
近2高:ref(H,sumbars(X,2)-1) linethick;
近3高:ref(H,sumbars(X,3)-1) linethick;
//
Y:LOW<REF(LOW,1) and LOW<REFX(LOW,1);
近1低:REF(LOW,BARSLAST(y)) linethick1 COLORGREEN;
近2低:REF(LOW,SUMBARS(y,2)-1) linethick COLORGREEN;
近3低:REF(LOW,SUMBARS(y,3)-1) linethick COLORYELLOW;
//
M1:IF(近1低<近2低 OR LOW<近1低,CROSS(近1低,LOW),0)COLORGRAY;
VERTLINE(M1)LINEDOT COLORWHITE;
//
RCk:=M1;//當M1破近1低時,往前取這區間的高點與低點範圍K棒,畫一個方框
SP:=REF(BARSLAST(REF(Y,1)=0 AND Y=1),1)COLORWHITE LINETHICK;
BHH:=HHV(H,SP+1); BHH:=SETVAL(RCK,BHH,-SP,BHH);
BLL:=LLV(L,SP+1); BLL:=SETVAL(RCK,BLL,-SP,BLL);
LCk:=SETVAL(RCK,0,-SP,1);
LCk:=SETVAL(RCK and SP>0,LCK,-SP+1,0);
//畫框-M1
DRAWSL(RCk,BHH,0,SP,1) COLORMAGENTA LINEDOT;
DRAWSL(RCk,BLL,0,SP,1) COLORMAGENTA LINEDOT;;
STICKLINE(RCk or LCK,BLL,BHH,0,0) COLORMAGENTA LINEDOT;
畫箱規則說明:
1)垂直虛線--為當根最低價跌破前一個低點位置
2)當符合此情況時,往前找前一個低點及前一個高點畫箱子(範圍包含跌破那一根K棒)
3)以前一個低點當起始點,往右畫至跌破的那一根K棒為止
4)目前箱子只能找到高點及跌破的那一根畫箱,低點無法納進來,想了好久還是無法解決?麻煩版主指導一下......謝謝
註:問題如圖片
原碼:
// x:=H>ref(H,1) and H>refx(H,1); 近1高:ref(H,barslast(X)) linethick1 COLORYELLOW; 近2高:ref(H,sumbars(X,2)-1) linethick; 近3高:ref(H,sumbars(X,3)-1) linethick; // Y:=LOW<REF(LOW,1) and LOW<REFX(LOW,1); 近1低:REF(LOW,BARSLAST(y)) linethick1 COLORGREEN; 近2低:REF(LOW,SUMBARS(y,2)-1) linethick COLORGREEN; 近3低:REF(LOW,SUMBARS(y,3)-1) linethick COLORYELLOW; // M1:=IF(近1低<近2低 OR LOW<近1低,CROSS(近1低,LOW),0)COLORGRAY; VERTLINE(M1)LINEDOT COLORWHITE; // RCk:=M1;//當M1破近1低時,往前取這區間的高點與低點範圍K棒,畫一個方框 SP:=ref(BARSLAST(Y),1)+1 COLORWHITE LINETHICK; BHH:=HHV(H,SP+1); BHH:=SETVAL(RCK,BHH,-SP,BHH); BLL:=LLV(L,SP+1); BLL:=SETVAL(RCK,BLL,-SP,BLL); LCk:=barpos=SETVAL(RCK,0,-SP,barpos-SP); //畫框-M1 DRAWSL(RCk,BHH,0,SP,1) COLORMAGENTA LINEDOT; DRAWSL(RCk,BLL,0,SP,1) COLORMAGENTA LINEDOT;; STICKLINE(RCk or LCK,BLL,BHH,0,0) COLORMAGENTA LINEDOT;
回覆:
目前框有點出入,可能是我的條件有問題....我自己再想一下.....謝謝
__________________
chiu
報告版主
回覆1)我重新修改了M1條件,原問題已解決
回覆2)新需求如下:
框下緣....我想取低點從左往右畫至M1,如附圖,再請版主指導一下....謝謝
__________________
chiu
//補一下M1新條件
M1:=IF(LOW<近1低,CROSS(近1低,LOW),0)COLORGRAY
__________________
chiu
引用:
最初由 a9681054 發表
//補一下M1新條件
M1:=IF(LOW<近1低,CROSS(近1低,LOW),0)COLORGRAY
報告版主,新修改M1條件如下:
//
x:=H>ref(H,1) and H>refx(H,1);
近1高:ref(H,barslast(X)) linethick1 COLORYELLOW;
近2高:ref(H,sumbars(X,2)-1) linethick;
近3高:ref(H,sumbars(X,3)-1) linethick;
//
Y:=LOW<REF(LOW,1) and LOW<REFX(LOW,1);
近1低:REF(LOW,BARSLAST(y)) linethick1 COLORGREEN;
近2低:REF(LOW,SUMBARS(y,2)-1) linethick COLORGREEN;
近3低:REF(LOW,SUMBARS(y,3)-1) linethick COLORYELLOW;
//
M1:=IF(LOW<近1低,CROSS(近1低,LOW),0)COLORGRAY;
//
RCk:=M1;//當M1破近1低時,往前取這區間的高點與低點範圍K棒,畫一個方框
SP:ref(BARSLAST(Y),1)+1 COLORWHITE LINETHICK;
BHH:=HHV(H,SP+1); BHH:=SETVAL(RCK,BHH,-SP,BHH);
BLL:=LLV(L,SP+1); BLL:=SETVAL(RCK,BLL,-SP,BLL);
LCk:=barpos=SETVAL(RCK,0,-SP,barpos-SP);
//
DRAWSL(RCk,BHH,0,SP,1) COLORMAGENTA LINEDOT;
DRAWSL(RCk,BLL,0,SP,1) COLORMAGENTA LINEDOT;;
STICKLINE(RCk or LCK,BLL,BHH,0,0) COLORMAGENTA LINEDOT;
__________________
chiu
引用:
最初由 a9681054 發表
報告版主,新修改M1條件如下:
//
x:=H>ref(H,1) and H>refx(H,1);
近1高:ref(H,barslast(X)) linethick1 COLORYELLOW;
近2高:ref(H,sumbars(X,2)-1) linethick;
近3高:ref(H,sumbars(X,3)-1) linethick;
//
Y:=LOW<REF(LOW,1) and LOW<REFX(LOW,1);
近1低:REF(LOW,BARSLAST(y)) linethick1 COLORGREEN;
近2低:REF(LOW,SUMBARS(y,2)-1) linethick COLORGREEN;
近3低:REF(LOW,SUMBARS(y,3)-1) linethick COLORYELLOW;
//
M1:=IF(LOW<近1低,CROSS(近1低,LOW),0)COLORGRAY;
//
RCk:=M1;//當M1破近1低時,往前取這區間的高點與低點範圍K棒,畫一個方框
SP:ref(BARSLAST(Y),1)+1 COLORWHITE LINETHICK;
BHH:=HHV(H,SP+1); BHH:=SETVAL(RCK,BHH,-SP,BHH);
BLL:=LLV(L,SP+1); BLL:=SETVAL(RCK,BLL,-SP,BLL);
LCk:=barpos=SETVAL(RCK,0,-SP,barpos-SP);
//
DRAWSL(RCk,BHH,0,SP,1) COLORMAGENTA LINEDOT;
DRAWSL(RCk,BLL,0,SP,1) COLORMAGENTA LINEDOT;;
STICKLINE(RCk or LCK,BLL,BHH,0,0) COLORMAGENTA LINEDOT;
報告版主
回覆:
1)測試後,下緣邊線變成有二個,我需求只要留上面那一個即可(打勾那一個),打叉處是不要的, 煩請版主再指導一下...謝謝
__________________
chiu
引用:
最初由 a9681054 發表
報告版主
回覆:
1)測試後,下緣邊線變成有二個,我需求只要留上面那一個即可(打勾那一個),打叉處是不要的, 煩請版主再指導一下...謝謝
回覆;
目前這個問題已解決了,感謝版主協助指導~
__________________
chiu
報告版主
新的需求條件如下:
M4:=IF(近1低<近2低 and 近2低>近3低 ,CROSS(近3低,LOW),0)COLORGRAY;
VERTLINE(M4)LINEDOT COLORRED;
//M4
RCk:=M4;//右
SP4:ref(BARSLAST(ref(Y,1)),3)+1 COLORWHITE LINETHICK;//+1
BHH:=HHV(H,REF(SP4+1,1)); BHH:=SETVAL(RCK,BHH,-SP2,BHH);//上
BLL:=LLV(L,SP4+1); BLL:=SETVAL(RCK,BLL,-SP4,BLL);//下
LCk:=barpos=SETVAL(RCK,0,-SP4,barpos-SP4);//左
DRAWSL(RCk,BHH,0,SP4,1) COLORGRAY LINETHICK2;
DRAWSL(RCk,ref(L,SP4),0,SP4,1) COLORGRAY LINETHICK2;
STICKLINE(LCK,L,BHH,0,0) COLORGRAY LINETHICK2;
STICKLINE(RCk,ref(L,SP4),BHH,0,0) COLORGRAY LINETHICK2;
當條件符合M4時,想輸出如附圖的綠色箱子,目前無法達成? 請版主再指導一下..謝謝
__________________
chiu
引用:
最初由 a9681054 發表
報告版主
新的需求條件如下:
M4:=IF(近1低<近2低 and 近2低>近3低 ,CROSS(近3低,LOW),0)COLORGRAY;
VERTLINE(M4)LINEDOT COLORRED;
//M4
RCk:=M4;//右
SP4:ref(BARSLAST(ref(Y,1)),3)+1 COLORWHITE LINETHICK;//+1
BHH:=HHV(H,REF(SP4+1,1)); BHH:=SETVAL(RCK,BHH,-SP2,BHH);//上
BLL:=LLV(L,SP4+1); BLL:=SETVAL(RCK,BLL,-SP4,BLL);//下
LCk:=barpos=SETVAL(RCK,0,-SP4,barpos-SP4);//左
DRAWSL(RCk,BHH,0,SP4,1) COLORGRAY LINETHICK2;
DRAWSL(RCk,ref(L,SP4),0,SP4,1) COLORGRAY LINETHICK2;
STICKLINE(LCK,L,BHH,0,0) COLORGRAY LINETHICK2;
STICKLINE(RCk,ref(L,SP4),BHH,0,0) COLORGRAY LINETHICK2;
當條件符合M4時,想輸出如附圖的綠色箱子,目前無法達成? 請版主再指導一下..謝謝
目前源碼如下:
//
x:=H>ref(H,1) and H>refx(H,1);
近1高:ref(H,barslast(X)) linethick1 COLORYELLOW;
近2高:ref(H,sumbars(X,2)-1) linethick;
近3高:ref(H,sumbars(X,3)-1) linethick;
//
Y:=LOW<REF(LOW,1) and LOW<REFX(LOW,1);
近1低:REF(LOW,BARSLAST(y)) linethick1 COLORwhite;
近2低:REF(LOW,SUMBARS(y,2)-1) linethick COLORGREEN;
近3低:REF(LOW,SUMBARS(y,3)-1) linethick COLORYELLOW;
//
M1:=IF(LOW<近1低,CROSS(近1低,LOW),0)COLORGRAY;
//VERTLINE(M1)LINEDOT COLORWHITE;
M4:=IF(近1低<近2低 and 近2低>近3低 ,CROSS(近3低,LOW),0)COLORGRAY;
VERTLINE(M4)LINEDOT COLORRED;
//M1
RCk:=M1;//當M1破近1低時,往前取這區間的高點與低點範圍K棒,畫一個方框
SP:=ref(BARSLAST(Y),1)+1 COLORWHITE LINETHICK;
BHH:=HHV(H,SP+1); BHH:=SETVAL(RCK,BHH,-SP,BHH);
BLL:=LLV(L,SP+1); BLL:=SETVAL(RCK,BLL,-SP,BLL);
LCk:=barpos=SETVAL(RCK,0,-SP,barpos-SP);
DRAWSL(RCk,BHH,0,SP,1) COLORMAGENTA LINEDOT;
DRAWSL(RCk,ref(L,SP),0,SP,1) COLORMAGENTA LINEDOT;
STICKLINE(LCK,L,BHH,0,0) COLORMAGENTA LINEDOT;
STICKLINE(RCk,ref(L,SP),BHH,0,0) COLORMAGENTA LINEDOT;
//M4
RCk:=M4;//右
SP4:ref(BARSLAST(ref(Y,1)),3)+1 COLORWHITE LINETHICK;//+1
BHH:=HHV(H,REF(SP4+1,1)); BHH:=SETVAL(RCK,BHH,-SP4,BHH);//上
BLL:=LLV(L,SP4+1); BLL:=SETVAL(RCK,BLL,-SP4,BLL);//下
LCk:=barpos=SETVAL(RCK,0,-SP4,barpos-SP4);//左
DRAWSL(RCk,BHH,0,SP4,1) COLORGRAY LINETHICK2;
DRAWSL(RCk,ref(L,SP4),0,SP4,1) COLORGRAY LINETHICK2;
STICKLINE(LCK,L,BHH,0,0) COLORGRAY LINETHICK2;
STICKLINE(RCk,ref(L,SP4),BHH,0,0) COLORGRAY LINETHICK2;
__________________
chiu
引用:
最初由 a9681054 發表
目前源碼如下:
//
x:=H>ref(H,1) and H>refx(H,1);
近1高:ref(H,barslast(X)) linethick1 COLORYELLOW;
近2高:ref(H,sumbars(X,2)-1) linethick;
近3高:ref(H,sumbars(X,3)-1) linethick;
//
Y:=LOW<REF(LOW,1) and LOW<REFX(LOW,1);
近1低:REF(LOW,BARSLAST(y)) linethick1 COLORwhite;
近2低:REF(LOW,SUMBARS(y,2)-1) linethick COLORGREEN;
近3低:REF(LOW,SUMBARS(y,3)-1) linethick COLORYELLOW;
//
M1:=IF(LOW<近1低,CROSS(近1低,LOW),0)COLORGRAY;
//VERTLINE(M1)LINEDOT COLORWHITE;
M4:=IF(近1低<近2低 and 近2低>近3低 ,CROSS(近3低,LOW),0)COLORGRAY;
VERTLINE(M4)LINEDOT COLORRED;
//M1
RCk:=M1;//當M1破近1低時,往前取這區間的高點與低點範圍K棒,畫一個方框
SP:=ref(BARSLAST(Y),1)+1 COLORWHITE LINETHICK;
BHH:=HHV(H,SP+1); BHH:=SETVAL(RCK,BHH,-SP,BHH);
BLL:=LLV(L,SP+1); BLL:=SETVAL(RCK,BLL,-SP,BLL);
LCk:=barpos=SETVAL(RCK,0,-SP,barpos-SP);
DRAWSL(RCk,BHH,0,SP,1) COLORMAGENTA LINEDOT;
DRAWSL(RCk,ref(L,SP),0,SP,1) COLORMAGENTA LINEDOT;
STICKLINE(LCK,L,BHH,0,0) COLORMAGENTA LINEDOT;
STICKLINE(RCk,ref(L,SP),BHH,0,0) COLORMAGENTA LINEDOT;
//M4
RCk:=M4;//右
SP4:ref(BARSLAST(ref(Y,1)),3)+1 COLORWHITE LINETHICK;//+1
BHH:=HHV(H,REF(SP4+1,1)); BHH:=SETVAL(RCK,BHH,-SP4,BHH);//上
BLL:=LLV(L,SP4+1); BLL:=SETVAL(RCK,BLL,-SP4,BLL);//下
LCk:=barpos=SETVAL(RCK,0,-SP4,barpos-SP4);//左
DRAWSL(RCk,BHH,0,SP4,1) COLORGRAY LINETHICK2;
DRAWSL(RCk,ref(L,SP4),0,SP4,1) COLORGRAY LINETHICK2;
STICKLINE(LCK,L,BHH,0,0) COLORGRAY LINETHICK2;
STICKLINE(RCk,ref(L,SP4),BHH,0,0) COLORGRAY LINETHICK2;
請描述綠色箱,是基於什麼規則,決定要畫那個範圍! (需含起點、高、低)
回覆:
1)起點....當M4=1時,往前畫框
2)高........Y=1後 下一根反彈後所有K棒的最高點
3)低........Y=1
__________________
chiu
補上需求如附圖
__________________
chiu
引用:
最初由 a9681054 發表
請描述綠色箱,是基於什麼規則,決定要畫那個範圍! (需含起點、高、低)
回覆:
1)起點....當M4=1時,往前畫框
2)高........Y=1後 下一根反彈後所有K棒的最高點
3)低........Y=1
定義不清
框框中不只一個高或低
回覆:
1)是的,就因不只一個高低,所以我想不出來要怎麼寫?原規則取消
2)請教版主若畫箱規則改採
2-1當第一支K最低價有跌破前面Y=1時,就往前
畫框(含跌破當根)
2-2起點....為跌破當根最低價
2-3高........Y=1後反彈的最高價
2-4低........Y=1
2-5特殊狀況,如遇框裡有大小框時都畫出來
以上新規則,再請版主指導一下...謝謝
新需求如副圖效果
__________________
chiu
引用:
最初由 a9681054 發表
定義不清
框框中不只一個高或低
回覆:
1)是的,就因不只一個高低,所以我想不出來要怎麼寫?原規則取消
2)請教版主若畫箱規則改採
2-1當第一支K最低價有跌破前面Y=1時,就往前
畫框(含跌破當根)
2-2起點....為跌破當根最低價
2-3高........Y=1後反彈的最高價
2-4低........Y=1
2-5特殊狀況,如遇框裡有大小框時都畫出來
以上新規則,再請版主指導一下...謝謝
新需求如副圖效果
想想應用上的困擾吧!
當顏色一樣,框中有框或框有重疊時,您分的出來誰是誰嗎?
回覆:是可以用顏色做區分判別
您的起點不是M4=1嗎?
這樣描述還是很亂,恕無法理解您的規則
回覆:了解
好,那新規則取消,一樣以M4=1當起點,版主之前有問多個高低點要取誰?就取最高的那個高點及最低的那個低點,這樣可以協助嗎?
__________________
chiu
引用:
最初由 a9681054 發表
想想應用上的困擾吧!
當顏色一樣,框中有框或框有重疊時,您分的出來誰是誰嗎?
回覆:是可以用顏色做區分判別
您的起點不是M4=1嗎?
這樣描述還是很亂,恕無法理解您的規則
回覆:了解
好,那新規則取消,一樣以M4=1當起點,版主之前有問多個高低點要取誰?就取最高的那個高點及最低的那個低點,這樣可以協助嗎?
Re: 是可以用顏色做區分判別
除非是不同的邏輯,否則必定是相同色
回覆:是有不同的邏輯,顏色這部份我自己可以處理
Re:好,那新規則取消,一樣以M4=1當起點,版主之前有問多個高低點要取誰?就取最高的那個高點及最低的那個低點,這樣可以協助嗎?
問題是最高的最低的是多少範圍內的?
回覆:最高範圍...取近3高內
最低範圍...取近3低內
歷史以來最高最低? 還是近N個最高最低? 還是...?
回覆:取近N個最高最低
以上需求,再請幫忙.....謝謝
__________________
chiu
引用:
最初由 a9681054 發表
Re: 是可以用顏色做區分判別
除非是不同的邏輯,否則必定是相同色
回覆:是有不同的邏輯,顏色這部份我自己可以處理
Re:好,那新規則取消,一樣以M4=1當起點,版主之前有問多個高低點要取誰?就取最高的那個高點及最低的那個低點,這樣可以協助嗎?
問題是最高的最低的是多少範圍內的?
回覆:最高範圍...取近3高內
最低範圍...取近3低內
歷史以來最高最低? 還是近N個最高最低? 還是...?
回覆:取近N個最高最低
以上需求,再請幫忙.....謝謝
有沒有去想過~~
行情不會都剛剛好都是三高對三低,在同一框框內
回覆:是不一定,實際上會有多情況
您確定要如此畫?
回覆:是的,版主你先幫我搞定M4=1時要如何把這個大框畫出來,因它跨了近期3個低點我一時寫不出來,至於裡面的小框我自己來寫寫看,麻煩你了.....
__________________
chiu
引用:
最初由 a9681054 發表
有沒有去想過~~
行情不會都剛剛好都是三高對三低,在同一框框內
回覆:是不一定,實際上會有多情況
您確定要如此畫?
回覆:是的,版主你先幫我搞定M4=1時要如何把這個大框畫出來,因它跨了近期3個低點我一時寫不出來,至於裡面的小框我自己來寫寫看,麻煩你了.....
回覆:
1)大箱子是有出來了
2)箱子的BLL我想取的是近3低位置,目前好像是取到M4的低點,請版主再幫我看一下....謝謝
註:問題如附圖說明
__________________
chiu
引用:
最初由 a9681054 發表
回覆:
1)大箱子是有出來了
2)箱子的BLL我想取的是近3低位置,目前好像是取到M4的低點,請版主再幫我看一下....謝謝
註:問題如附圖說明
回覆:
1)修正後有取到了
2)不過這個大箱子如版主所說,並非都剛好有三高三低情形,各種情況都有可能產生算是蠻複雜,學習了......後續有新的想法或問題再請教版主,感謝~
__________________
chiu
報告版主
自畫練習畫小框,設了M2條件,源碼如下
//近高區
X:=H>ref(H,1) and H>refx(H,1);
近1高:ref(H,barslast(X)) linethick1 COLORyellow;
近2高:ref(H,sumbars(X,2)-1) linethick;
近3高:ref(H,sumbars(X,3)-1) linethicK;
//近低區
Y:=LOW<REF(LOW,1) and LOW<REFX(LOW,1);
近1低:REF(LOW,BARSLAST(y)) linethick1 COLORWHITE;
近2低:REF(LOW,SUMBARS(y,2)-1) linethick COLORGREEN;
近3低:REF(LOW,SUMBARS(y,3)-1) linethick COLORYELLOW;
///////////////////////////////////////////////////////////////////////////////
//條件
M2:=if(REF(L<近1低,1)=0 AND 近1低<近2低 AND 近2低<近3低 ,L=近1低,0);
VERTLINE(M2);
///////////////////////////////////////////////////////////////////////////////
//M2
RCk:=M2;
SP2:ref(BARSLAST(Y),1)+1 COLORWHITE LINETHICK;
BHH:=HHV(H,ref(SP2+1,1)); BHH:=SETVAL(RCK,BHH,-SP2,BHH);//ref(SP2+1,1))取反彈最高點
BLL:=LLV(L,SP2+1); BLL:=SETVAL(RCK,BLL,-SP2,BLL);
LCk:=barpos=SETVAL(RCK,0,-SP2,barpos-SP2);
DRAWSL(RCk,BHH,0,SP2,1) COLORyellow LINETHICK2;//上
DRAWSL(RCk,ref(L,SP2),0,SP2,1) COLORyellow LINETHICK2;//下
STICKLINE(LCK,L,BHH,0,0) COLORyellow LINETHICK2;//左
STICKLINE(RCk,ref(L,SP2),BHH,0,0) COLORyellow LINETHICK2;//右
測試發現如下問題:
1)當M2條件單一時.....畫框是正常
2)但當M2條件是連續成立時.....畫框會異常,想了好久還是無法改善,請版主指導一下....謝謝
__________________
chiu
引用:
最初由 a9681054 發表
報告版主
自畫練習畫小框,設了M2條件,源碼如下
//近高區
X:=H>ref(H,1) and H>refx(H,1);
近1高:ref(H,barslast(X)) linethick1 COLORyellow;
近2高:ref(H,sumbars(X,2)-1) linethick;
近3高:ref(H,sumbars(X,3)-1) linethicK;
//近低區
Y:=LOW<REF(LOW,1) and LOW<REFX(LOW,1);
近1低:REF(LOW,BARSLAST(y)) linethick1 COLORWHITE;
近2低:REF(LOW,SUMBARS(y,2)-1) linethick COLORGREEN;
近3低:REF(LOW,SUMBARS(y,3)-1) linethick COLORYELLOW;
///////////////////////////////////////////////////////////////////////////////
//條件
M2:=if(REF(L<近1低,1)=0 AND 近1低<近2低 AND 近2低<近3低 ,L=近1低,0);
VERTLINE(M2);
///////////////////////////////////////////////////////////////////////////////
//M2
RCk:=M2;
SP2:ref(BARSLAST(Y),1)+1 COLORWHITE LINETHICK;
BHH:=HHV(H,ref(SP2+1,1)); BHH:=SETVAL(RCK,BHH,-SP2,BHH);//ref(SP2+1,1))取反彈最高點
BLL:=LLV(L,SP2+1); BLL:=SETVAL(RCK,BLL,-SP2,BLL);
LCk:=barpos=SETVAL(RCK,0,-SP2,barpos-SP2);
DRAWSL(RCk,BHH,0,SP2,1) COLORyellow LINETHICK2;//上
DRAWSL(RCk,ref(L,SP2),0,SP2,1) COLORyellow LINETHICK2;//下
STICKLINE(LCK,L,BHH,0,0) COLORyellow LINETHICK2;//左
STICKLINE(RCk,ref(L,SP2),BHH,0,0) COLORyellow LINETHICK2;//右
測試發現如下問題:
1)當M2條件單一時.....畫框是正常
2)但當M2條件是連續成立時.....畫框會異常,想了好久還是無法改善,請版主指導一下....謝謝
回覆:
能力有限檢查不出來,可不可幫忙一下....
__________________
chiu
引用:
最初由 a9681054 發表
回覆:
能力有限檢查不出來,可不可幫忙一下....
BHH 和 BLL 你目前算的方式不同呀
回覆:
1) 我自我測試比較,將M1畫框條件設成與MI一樣
2)結果M1....遇連續框時輸出正常
M2.....遇連續框時輸出就是會不正常
實在想不通,版主是否能直接給我答案讓我習習.....謝謝
__________________
chiu
引用:
最初由 a9681054 發表
BHH 和 BLL 你目前算的方式不同呀
回覆:
1) 我自我測試比較,將M1畫框條件設成與MI一樣
2)結果M1....遇連續框時輸出正常
M2.....遇連續框時輸出就是會不正常
實在想不通,版主是否能直接給我答案讓我習習.....謝謝
M2 畫框的邏輯又沒給,我要怎樣給你答案?
回覆:
M2畫箱規則說明:
1)起點..... M2
2)箱高.......Y=1後下一根反彈後的最高點當高點
3)箱低..........前一個Y=1當低點
4)畫箱範圍包含跌破那一根K棒
若框是會有重疊,會影響到處理方法
或許 M4 的做法就是您要的答案
回覆:這有試過,但還是弄不出來
邏輯先想清楚,並去想應用時可能遭遇的情況!
確定可行並適合用後,再來撰寫程式~~
回覆:了解,謝謝提醒
建議用內建的畫線工具,自己先模擬畫畫看
如此可以省下很多 Try 的時間..
回覆:這一點我會
__________________
chiu
引用:
最初由 a9681054 發表
M2 畫框的邏輯又沒給,我要怎樣給你答案?
回覆:
M2畫箱規則說明:
1)起點..... M2
2)箱高.......Y=1後下一根反彈後的最高點當高點
3)箱低..........前一個Y=1當低點
4)畫箱範圍包含跌破那一根K棒
若框是會有重疊,會影響到處理方法
或許 M4 的做法就是您要的答案
回覆:這有試過,但還是弄不出來
邏輯先想清楚,並去想應用時可能遭遇的情況!
確定可行並適合用後,再來撰寫程式~~
回覆:了解,謝謝提醒
建議用內建的畫線工具,自己先模擬畫畫看
如此可以省下很多 Try 的時間..
回覆:這一點我會
你確定 BHH 畫的,符合您說的這個嗎? (請多檢驗)
2)箱高.......Y=1後下一根反彈後的最高點當高點
回覆:是的
需求如附圖
__________________
chiu
版主SORRY
剛附圖最左箱子手畫錯誤,另附圖文字有修正一下
新需求圖如附件,上一則副圖作廢
__________________
chiu
引用:
最初由 a9681054 發表
版主SORRY
剛附圖最左箱子手畫錯誤,另附圖文字有修正一下
新需求圖如附件,上一則副圖作廢
那二根X=0並非高點
回覆:
1)我知道
2)因我想取的箱高,是指Y=1成立後到下一次Y=1成立之前的所有高點的最高點,那是我需求要取的
3)因有的反彈最高點剛好會=近1高
以上補充說明
__________________
chiu
引用:
最初由 a9681054 發表
那二根X=0並非高點
回覆:
1)我知道
2)因我想取的箱高,是指Y=1成立後到下一次Y=1成立之前的所有高點的最高點,那是我需求要取的
3)因有的反彈最高點剛好會=近1高
以上補充說明
引用:
最初由 cgjj 發表
那你要給我 箱的寬度如何決定
箱的起點是 M2,終點是?
那你要給我 箱的寬度如何決定
箱的起點是 M2,終點是?
回覆:
終點.....
當M2條件成立時
往左被跌破的那個低點(Y=1)就是
如附圖
__________________
chiu
引用:
最初由 a9681054 發表
那你要給我 箱的寬度如何決定
箱的起點是 M2,終點是?
回覆:
終點.....
當M2條件成立時
往左被跌破的那個低點(Y=1)就是
如附圖
a."2)因我想取的箱高,是指Y=1成立後到下一次Y=1成立之前的所有高點的最高點,那是我需求要取的"
b."每個箱子從最低點的下一根取反彈的最高點當箱高"
您必須清楚一點!!!
a. 和 b. 是不相同的(雖然大多數時間是相等)
目前我是採取 a. 的做法來寫,並非是 b.
前面回的就是了
回覆:
請教版主是指那一則?
__________________
chiu
a."2)因我想取的箱高,是指Y=1成立後到下一次Y=1成立之前的所有高點的最高點,那是我需求要取的"
b."每個箱子從最低點的下一根取反彈的最高點當箱高"
您必須清楚一點!!!
a. 和 b. 是不相同的(雖然大多數時間是相等)
目前我是採取 a. 的做法來寫,並非是 b.
回覆:
這說明我了解
__________________
chiu
引用:
最初由 a9681054 發表
前面回的就是了
回覆:
請教版主是指那一則?
前面回的就是了
回覆:
請教版主是指那一則?
回覆:
版主SORRY, 太多則了,剛有看到了
__________________
chiu
報告版主
1)目前a的方式.......連續框不正常的現象已解決
2)但我比較想要的是b的方法,可以再幫忙嗎?.....謝謝
__________________
chiu
引用:
最初由 a9681054 發表
報告版主
1)目前a的方式.......連續框不正常的現象已解決
2)但我比較想要的是b的方法,可以再幫忙嗎?.....謝謝
"反彈" 二字邏輯上是非常含糊的
每個人認定的處理方式不一定相同~~
回覆:了解
只給"反彈"二字,恕不協助!!!
回覆:
反彈最高點定義如附圖說明
__________________
chiu
引用:
最初由 a9681054 發表
"反彈" 二字邏輯上是非常含糊的
每個人認定的處理方式不一定相同~~
回覆:了解
只給"反彈"二字,恕不協助!!!
回覆:
反彈最高點定義如附圖說明
你描述的 "反彈",跟 a. 算法是一致的呀~~
看了你畫的圖,我做了更精確的修改:
1.原先箱框左邊首根(Y=1)的高也會列入比較,現已經修正為不納入
2.另外 BLL 也做了一點算法上的修正。
回覆:
1)我回測了台當月歷史圖(使用日線)
2)以版主最新版M2畫框方法,發現有3個地方Y=1時畫框異常
3)異常日期為2013/8/16,2011/6/20,2005/3/23
麻煩版主再幫忙看一下....謝謝
__________________
chiu
引用:
最初由 a9681054 發表
你描述的 "反彈",跟 a. 算法是一致的呀~~
看了你畫的圖,我做了更精確的修改:
1.原先箱框左邊首根(Y=1)的高也會列入比較,現已經修正為不納入
2.另外 BLL 也做了一點算法上的修正。
回覆:
1)我回測了台當月歷史圖(使用日線)
2)以版主最新版M2畫框方法,發現有3個地方Y=1時畫框異常
3)異常日期為2013/8/16,2011/6/20,2005/3/23
麻煩版主再幫忙看一下....謝謝
按前面您畫面說的邏輯,M2=1 時,應該 Y=1 而非 Y=0
這問題是您 M2 本身的邏輯問題,請自行修正!!!
回覆:
有看到版主所說的問題了...謝謝指導
__________________
chiu
請教版主:
想將M2條件所畫的框填滿背景,要怎麼寫?
__________________
chiu
引用:
最初由 a9681054 發表
請教版主:
想將M2條件所畫的框填滿背景,要怎麼寫?
不建議如此做!
您有框與框相錯交疊的情況,用填滿的方式,會不易觀看!
回覆:
了解版主所說問題,但我想學習看看,麻煩版主幫我一下.....謝謝
__________________
chiu
引用:
最初由 a9681054 發表
不建議如此做!
您有框與框相錯交疊的情況,用填滿的方式,會不易觀看!
回覆:
了解版主所說問題,但我想學習看看,麻煩版主幫我一下.....謝謝
回覆:
了解,那這一題需求就取消了.......謝謝版主
__________________
chiu
//M2
RCk:=M2;
SP2:=SUMBARS(Y,2)-1;
YSP:=barslast(Y);
BHH:=ref(HHV(H,YSP+1-1),1);/???為什麼要-1
BLL:=ref(LLV(L,YSP+1),1);
LCk:=barpos=SETVAL(RCK,0,-SP2,barpos-SP2); //???
LCSP:=SETVAL(RCK,0,-SP2,SP2);//???
DRAWSL(RCk,BHH,0,SP2,1) COLORYELLOW LINETHICK2;
DRAWSL(RCk,BLL,0,SP2,1) COLORYELLOW LINETHICK2;
STICKLINE(LCK,refx(BHH,LCSP),refx(BLL,LCSP),0,0) COLORYELLOW LINETHICK2;//???
STICKLINE(RCk,BHH,BLL,0,0) COLORYELLOW LINETHICK2;
報告版主:
框雖然有產生出來,但對於版主的寫法有些還是不是很明白,上述程式碼每行後面有註記問號的,再請版主幫我註解一下....謝謝
__________________
chiu
引用:
最初由 a9681054 發表
//M2
RCk:=M2;
SP2:=SUMBARS(Y,2)-1;
YSP:=barslast(Y);
BHH:=ref(HHV(H,YSP+1-1),1);/???為什麼要-1
BLL:=ref(LLV(L,YSP+1),1);
LCk:=barpos=SETVAL(RCK,0,-SP2,barpos-SP2); //???
LCSP:=SETVAL(RCK,0,-SP2,SP2);//???
DRAWSL(RCk,BHH,0,SP2,1) COLORYELLOW LINETHICK2;
DRAWSL(RCk,BLL,0,SP2,1) COLORYELLOW LINETHICK2;
STICKLINE(LCK,refx(BHH,LCSP),refx(BLL,LCSP),0,0) COLORYELLOW LINETHICK2;//???
STICKLINE(RCk,BHH,BLL,0,0) COLORYELLOW LINETHICK2;
報告版主:
框雖然有產生出來,但對於版主的寫法有些還是不是很明白,上述程式碼每行後面有註記問號的,再請版主幫我註解一下....謝謝
回覆:
1)了解了....非常感謝版主的耐心來回指導與說明~
2)請教最後指導的M2框寫法,是否<=近3低以下的框,都可以共用?
__________________
chiu
引用:
最初由 a9681054 發表
2)請教最後指導的M2框寫法,是否<=近3低以下的框,都可以共用?
回覆:
例如:
稍早問過的M1/M2/M4..條件成立時要畫的框,是否可以共用最後版主所提供M2框的畫法??
__________________
chiu
引用:
最初由 a9681054 發表
回覆:
例如:
稍早問過的M1/M2/M4..條件成立時要畫的框,是否可以共用最後版主所提供M2框的畫法??
回覆:
瞭解,謝謝版主∼
__________________
chiu
M4:=IF(近1低<近2低 and 近2低>近3低 ,CROSS(近3低,LOW),0)COLORGRAY;
VERTLINE(M4)LINEDOT COLORRED;
版主你好:
再請教你上述條件成立時因會橫跨3個Y, 如要共用版主最後提供的畫框方式,YSP:=barslast(Y);這一行要怎麼設定?
__________________
chiu
引用:
最初由 a9681054 發表
M4:=IF(近1低<近2低 and 近2低>近3低 ,CROSS(近3低,LOW),0)COLORGRAY;
VERTLINE(M4)LINEDOT COLORRED;
版主你好:
再請教你上述條件成立時因會橫跨3個Y, 如要共用版主最後提供的畫框方式,YSP:=barslast(Y);這一行要怎麼設定?
SP2:=SUMBARS(Y,3)-1;
YSP:=SUMBARS(Y,2)-1;
回覆:
不是很了解其意思,請版主幫我註解一下學習....謝謝
__________________
chiu
引用:
最初由 a9681054 發表
SP2:=SUMBARS(Y,3)-1;
YSP:=SUMBARS(Y,2)-1;
回覆:
不是很了解其意思,請版主幫我註解一下學習....謝謝
回覆:
好的.....謝謝版主
__________________
chiu
引用:
最初由 a9681054 發表
請教版主:
想將M2條件所畫的框填滿背景,要怎麼寫?
__________________
至誠能勝天下至偽
至拙能勝天下至巧
引用:
最初由 peter109 發表
用M1做範例
M12:=SETVAL(M1,M1,-Dsp,M1);
STICKLINE(M12,BHH,BLL,10,0),COLORCCCCCC;
M2 框內底色
重新整理後 試試看是否所需
RCKpb:=BARSLAST(RCK OR (RCK AND LCK));
LCKpb:=BARSLAST(LCK OR (LCK AND RCK));
M22:=SETVAL(RCK AND LCK=0,RCK AND LCK=0,-LCKpb,RCK AND LCK=0);
M23:=SETVAL(RCK AND LCK,RCK AND LCK,-REF(LCKpb,1),RCK AND LCK);
BH2:=SETVAL(RCK AND LCK=0,BHH,-LCKpb,BHH);
BH3:=SETVAL(RCK AND LCK,BHH,-BARSLAST(LCK AND RCK=0),BHH),COLORRED;
BL2:=SETVAL(RCK AND LCK=0,BLL,-LCKpb,BLL);
BL3:=SETVAL(RCK AND LCK,BLL,-BARSLAST(LCK AND RCK=0),BLL),COLORRED;
STICKLINE(M22,BH2,BL2,10,0),COLORDDDDDD;
STICKLINE(M23,BH3,BL3,10,0),COLORDDDDDD;
__________________
至誠能勝天下至偽
至拙能勝天下至巧
謝謝 peter兄,單一條件箱測試ok
__________________
chiu
全部時間均為台灣時間, 現在時間為12:31 | 在這個頁面顯示本主題全部的 78 個文章 |
Powered by: vBulletin Version 2.3.0 - Copyright©2000-, Jelsoft Enterprises Limited.
簡愛洋行 製作 Copyright 2003-. All Rights Reserved.