奇狐社區論壇
在這個頁面顯示本主題全部的 9 個文章

奇狐社區論壇 (http://www.chiefox.com.tw/bbs/index.php)
- 問題交流 (http://www.chiefox.com.tw/bbs/forumdisplay.php?forumid=28)
-- [問題]波段高低點與ma10的乖離 (http://www.chiefox.com.tw/bbs/showthread.php?threadid=22398)


由 mead 在 2020-03-13 15:59 發表:

[問題]波段高低點與ma10的乖離

下面是我利用網站資源所改寫的一定時間(目前設30根K棒)內的最高和最低與ma10的乖離畫線;在執行上出現一些問題,麻煩總版主指導錯誤!謝謝

波段高低乖離
INPUT:NP(30,1,1000),M(10,1,1000);
IsHighValue := ref(H,1)>ref(hhv(H,NP),2) and H<ref(H,1);
IsHighValue :=refx(IsHighValue,1);
IsLowValue := ref(L,1)<ref(LLV(L,NP),2) and L>ref(L,1);
IsLowValue :=refx(IsLowValue ,1);
CK:=IsHighValue-IsLowValue;
BLK:=ref(CK,barslast(CK<>0));
BlkSW:=BLK<>ref(BLK,1) or barpos=0;
HH:=H;
LL:=L;
MaxHP:=0;
MinLP:=0;
PP:=C*0;
for i=lbound(BLK) to datacount do begin if BlkSW[i] or i=datacount then begin if MaxHP>0 then PP[MaxHP]:=1;
if MinLP>0 then PP[MinLP]:=-1;
MaxHP:=0;
MinLP:=0;
end;
if BLK[i]=1 and CK[i]=1 then begin if MaxHP=0 then MaxHP:=i;
if HH[i]>HH[MaxHP] then MaxHP:=i;
end
else
if BLK[i]=-1 and CK[i]=-1 then begin if MinLP=0 then MinLP:=i;
if LL[i]<LL[MinLP] then MinLP:=i;
end;
end;
DrawNumber(PP=1, High{+15}, High, 2),COLORMAGENTA;
DrawNumber(PP=-1, Low{-15}, Low, 2),COLORYELLOW;
MaxH:=ref(High,BARSLAST(pp=1));
MinL:=ref(Low,BARSLAST(pp=-1));
ma10:ma(C,M),colorwhite;
PARTLINE(ma10<ref(ma10,1),ma10),colorblack;

H乖:(ref(High,BARSLAST(pp=1))+ref(ma10,BARSLAST(pp=1)))/2,COLORCYAN;
L乖:(ref(Low,BARSLAST(pp=-1))+ref(ma10,BARSLAST(pp=-1)))/2,colormagenta;


由 cgjj 在 2020-03-13 17:09 發表:

回覆: [問題]波段高低點與ma10的乖離

引用:
最初由 mead 發表
下面是我利用網站資源所改寫的一定時間(目前設30根K棒)內的最高和最低與ma10的乖離畫線;在執行上出現一些問題,麻煩總版主指導錯誤!謝謝

波段高低乖離
INPUT:NP(30,1,1000),M(10,1,1000);
IsHighValue := ref(H,1)>ref(hhv(H,NP),2) and H<ref(H,1);
IsHighValue :=refx(IsHighValue,1);
IsLowValue := ref(L,1)<ref(LLV(L,NP),2) and L>ref(L,1);
IsLowValue :=refx(IsLowValue ,1);
CK:=IsHighValue-IsLowValue;
BLK:=ref(CK,barslast(CK<>0));
BlkSW:=BLK<>ref(BLK,1) or barpos=0;
HH:=H;
LL:=L;
MaxHP:=0;
MinLP:=0;
PP:=C*0;
for i=lbound(BLK) to datacount do begin if BlkSW[i] or i=datacount then begin if MaxHP>0 then PP[MaxHP]:=1;
if MinLP>0 then PP[MinLP]:=-1;
MaxHP:=0;
MinLP:=0;
end;
if BLK[i]=1 and CK[i]=1 then begin if MaxHP=0 then MaxHP:=i;
if HH[i]>HH[MaxHP] then MaxHP:=i;
end
else
if BLK[i]=-1 and CK[i]=-1 then begin if MinLP=0 then MinLP:=i;
if LL[i]<LL[MinLP] then MinLP:=i;
end;
end;
DrawNumber(PP=1, High{+15}, High, 2),COLORMAGENTA;
DrawNumber(PP=-1, Low{-15}, Low, 2),COLORYELLOW;
MaxH:=ref(High,BARSLAST(pp=1));
MinL:=ref(Low,BARSLAST(pp=-1));
ma10:ma(C,M),colorwhite;
PARTLINE(ma10<ref(ma10,1),ma10),colorblack;

H乖:(ref(High,BARSLAST(pp=1))+ref(ma10,BARSLAST(pp=1)))/2,COLORCYAN;
L乖:(ref(Low,BARSLAST(pp=-1))+ref(ma10,BARSLAST(pp=-1)))/2,colormagenta;



加入這兩個垂直線比對看看
VERTLINE(IsHighValue);
VERTLINE(IsLowValue);

如果這兩個沒如預期結果,後面的就會有問題!


由 mead 在 2020-03-14 14:31 發表:

加入後:
波段高低乖離
INPUT:NP(30,1,1000),M(10,1,1000);
IsHighValue := ref(H,1)>ref(hhv(H,NP),2) and H<ref(H,1);
IsHighValue :=refx(IsHighValue,1);
IsLowValue := ref(L,1)<ref(LLV(L,NP),2) and L>ref(L,1);
IsLowValue :=refx(IsLowValue ,1);
CK:=IsHighValue-IsLowValue;
BLK:=ref(CK,barslast(CK<>0));
BlkSW:=BLK<>ref(BLK,1) or barpos=0;
HH:=H;
LL:=L;
MaxHP:=0;
MinLP:=0;
PP:=C*0;
for i=lbound(BLK) to datacount do begin if BlkSW[i] or i=datacount then begin if MaxHP>0 then PP[MaxHP]:=1;
if MinLP>0 then PP[MinLP]:=-1;
MaxHP:=0;
MinLP:=0;
end;
if BLK[i]=1 and CK[i]=1 then begin if MaxHP=0 then MaxHP:=i;
if HH[i]>HH[MaxHP] then MaxHP:=i;
end
else
if BLK[i]=-1 and CK[i]=-1 then begin if MinLP=0 then MinLP:=i;
if LL[i]<LL[MinLP] then MinLP:=i;
end;
end;
DrawNumber(PP=1, High{+15}, High, 2),COLORMAGENTA;
DrawNumber(PP=-1, Low{-15}, Low, 2),COLORYELLOW;
MaxH:=ref(High,BARSLAST(pp=1));
MinL:=ref(Low,BARSLAST(pp=-1));
ma10:ma(C,M),colorwhite;
PARTLINE(ma10<ref(ma10,1),ma10),colorblack;

VERTLINE(IsHighValue),LINEDASHDOT;
VERTLINE(IsLowValue),LINEDASHDOT;

H乖:(ref(High,BARSLAST(pp=1))+ref(ma10,BARSLAST(pp=1)))/2,COLORCYAN;
L乖:(ref(Low,BARSLAST(pp=-1))+ref(ma10,BARSLAST(pp=-1)))/2,colormagenta;

效果如下圖:


由 cgjj 在 2020-03-15 22:48 發表:

引用:
最初由 mead 發表
加入後:
...................... (略)

效果如下圖:



VERTLINE(IsLowValue); 在您說的該區並沒有成立
沒有成立,該區自然就不會有動作!

您這問題應該是條件本身的問題,並非程式寫作的問題
條件的部分,您要自己去思考研判調整了~~


由 mead 在 2020-03-16 07:29 發表:

引用:
最初由 cgjj 發表
VERTLINE(IsLowValue); 在您說的該區並沒有成立
沒有成立,該區自然就不會有動作!

您這問題應該是條件本身的問題,並非程式寫作的問題
條件的部分,您要自己去思考研判調整了~~



了解!謝謝指導


由 peter109 在 2020-04-25 08:10 發表:

個人想法如下:
波段高低 加入均線後的附加用法
1) 最大乖離發生的時間點不一定會是波段高低發生處 最大乖離發生的對應價是個可能的關鍵價
2)波段高低產生後的最大(最小)MA10對應價是個可能的(均線系統)關鍵價
3)分別針對上述兩點(位置)和其對應的波段高低另外去做區間切割成為可能的關鍵價
4)依據波段高低做區間切割

__________________
至誠能勝天下至偽
至拙能勝天下至巧


由 mead 在 2020-04-26 21:35 發表:

引用:
最初由 peter109 發表
個人想法如下:
波段高低 加入均線後的附加用法
1) 最大乖離發生的時間點不一定會是波段高低發生處 最大乖離發生的對應價是個可能的關鍵價
2)波段高低產生後的最大(最小)MA10對應價是個可能的(均線系統)關鍵價
3)分別針對上述兩點(位置)和其對應的波段高低另外去做區間切割成為可能的關鍵價
4)依據波段高低做區間切割



沒想那麼多!單純就好.任何方法只是給一個參考依據;能做決策和依循就可.


由 a27183526 在 2021-02-19 10:43 發表:

MONEY

請問 這個 指標 橫線 出現以後, 會不會 變來變去?

__________________
1


由 cgjj 在 2021-02-19 11:28 發表:

回覆: MONEY

引用:
最初由 a27183526 發表
請問 這個 指標 橫線 出現以後, 會不會 變來變去?


不了解指標特性就不要去用!!!

前面已說 "....這問題應該是條件本身的問題,並非程式寫作的問題"

明知已經有問題了~~ 卻還要去用去Try
這不是拿石頭砸自己腳嗎!


全部時間均為台灣時間, 現在時間為09:31
在這個頁面顯示本主題全部的 9 個文章


Powered by: vBulletin Version 2.3.0 - Copyright©2000-, Jelsoft Enterprises Limited.

簡愛洋行 製作 Copyright 2003-. All Rights Reserved.