![]() |
在這個頁面顯示本主題全部的 10 個文章 |
奇狐社區論壇 (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=3682)
請教寫法:過去區間內的最高最低價
想了許久,一籌莫展.........只好上來求救
請教寫法:過去區間內的最高最低價
例如:
想於當下得知:『上次條件A成立後,到條件B成立那天止的時間區段內,所發生的最高價跟最低價』 。
參數名 預設 最小 最大
A 25 1 500
B 8 1 500
// 條件A:Cross(K,20);<<----原來的條件
// 條件B:Cross(K,80);<<----原來的條件
請各位有空幫我提醒一下。
謝謝!
突然想到
突然想到,應該可以用:
Backset(,)
FILTER(,)
的組合來克服!
再來去試一下囉.............
.
..
...
半响之後,試了幾下........發覺還是不會解+解不出來
上面的組合只是另一種得到區間的方法
至於,怎樣取得這個區間內的最高跟最低,依舊沒有幫助
所以,繼續掛病號向大家求救 ................
這樣可以嗎
A:=cross("kdj.k",20);
B:=cross("kdj.k",80);
HA:=ref(H,barslast(A));
LA:=ref(L,barslast(A));
HB:=ref(H,barslast(B));
LB:=ref(L,barslast(B));
MH:MAX(HA,HB);
ML:MIN(LA,LB);
__________________
至誠能勝天下至偽
至拙能勝天下至巧
多謝 peter109 您撥空幫我解答!
您的寫法並不能符合所求,其中
HA 跟 LA 指的是條件A 發生時當根K棒的最高跟最低。
HB 跟 LB 指的是條件B 發生時當根K棒的最高跟最低。
並不能完全包含 A 到 B 這段時間內的最高跟最低!
或許小弟的問法導致 peter109 兄誤解題意,我已經改了新的問法 ,請 peter109 兄跟大家 能繼續動動腦幫幫忙。
這樣是您要的嗎?
只適用於條件無連續成立且A和B必交錯時用
例如:
ABABABAB 時可用
ABBABAAB 時不可用
原碼:
CS:=cross("kdj.k","kdj.d") or cross("kdj.d","kdj.k");
MD:=if(CS,2-mod(sum(CS,0),2),0); // MD值:1起 2終
CSSP:=ref(BARSLAST(CS),1)+1;
HH:=if(MD=2,HHV(H,CSSP),0); // 取得最高
LL:=if(MD=2,LLV(L,CSSP),0); // 取得最低
DRAWSL(MD=2,HH,0,CSSP,1);
DRAWSL(MD=2,LL,0,CSSP,1);
有效區間
樓主的問題由 bajatje/懶兄 解出
感謝他
A:=cross("kdj.K",80);
B:=cross("KDJ.k",20);
drawicon(A,H,10);//判定用 可移除
drawicon(B,H,12);
wa:=barslast(a);
wb:=barslast(b);
ia:=backset(a,wb) and sum(a,wb)=0;
ib:=backset(b,wa) and sum(b,wa)=0;
sa:=wa-ia*wb;
waa:=if(sa<=ref(sa,1),0,sa);
sb:=wb-ib*wa;
wbb:=if(sb<=ref(sb,1),0,sb);
wab:if(waa>wbb,waa,wbb);
有了 有效區間
再表現出區間高低價應該不難
__________________
至誠能勝天下至偽
至拙能勝天下至巧
回覆時 不知版大已經有回
得罪了
請見諒
__________________
至誠能勝天下至偽
至拙能勝天下至巧
引用:
最初由 peter109 發表
回覆時 不知版大已經有回
得罪了
請見諒
感謝 cgjj、 peter109、 bajatje/懶兄 的熱心指導!
再謝謝你們一次!
引用:
最初由 cgjj 發表
這樣是您要的嗎?
只適用於條件無連續成立且A和B必交錯時用
例如:
ABABABAB 時可用
ABBABAAB 時不可用
原碼:
CS:=cross("kdj.k","kdj.d") or cross("kdj.d","kdj.k");
MD:=if(CS,2-mod(sum(CS,0),2),0); // MD值:1起 2終
CSSP:=ref(BARSLAST(CS),1)+1;
HH:=if(MD=2,HHV(H,CSSP),0); // 取得最高
LL:=if(MD=2,LLV(L,CSSP),0); // 取得最低
DRAWSL(MD=2,HH,0,CSSP,1);
DRAWSL(MD=2,LL,0,CSSP,1);
全部時間均為台灣時間, 現在時間為12:08 | 在這個頁面顯示本主題全部的 10 個文章 |
Powered by: vBulletin Version 2.3.0 - Copyright©2000-, Jelsoft Enterprises Limited.
簡愛洋行 製作 Copyright 2003-. All Rights Reserved.