![]() |
總頁數 (2): [1] 2 » 在這個頁面顯示本主題全部的 28 個文章 |
奇狐社區論壇 (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=18419)
[問題]如何只顯示最後一個循環的編號?
源碼如下:
STDBKH:=REF(REF(H,BARSLAST(O>C)),1),COLORBLUE;
N1BK:=O>C AND H>STDBKH;
N1BKL:=REF(L,BARSLAST(N1BK));
N2BK:=L<N1BKL AND O>C AND SUM(L<N1BKL AND O>C,BARSLAST(N1BK)+1)=1;
N2BKL:=REF(L,BARSLAST(N2BK));
N3BK:=L<N2BKL AND O>C AND SUM(L<N2BKL AND O>C,BARSLAST(N2BK)+1)=1;
N3BKL:=REF(L,BARSLAST(N3BK));
N4BK:=L<N3BKL AND O>C AND SUM(L<N3BKL AND O>C,BARSLAST(N3BK)+1)=1;
N4BKL:=REF(L,BARSLAST(N4BK));
N5BK:=L<N4BKL AND O>C AND SUM(L<N4BKL AND O>C,BARSLAST(N4BK)+1)=1;
DRAWTEXT(N1BK,H,'1'),COLORBLACK,PXUP65,ALIGN0;
DRAWTEXT(N2BK,H,'2'),COLORBLACK,PXUP65,ALIGN0;
DRAWTEXT(N3BK,H,'3'),COLORBLACK,PXUP65,ALIGN0;
DRAWTEXT(N4BK,H,'4'),COLORBLACK,PXUP65,ALIGN0;
DRAWTEXT(N5BK,H,'5'),COLORBLACK,PXUP65,ALIGN0;
請指導:1.有無簡潔的寫法不需要一根一根地寫下去?
2.如何只顯示最後一個循環的編號?而不會重疊?(以上是指繪圖效果)如果可以有只保留單獨一個循環(是連續的單獨一個循環!而非歷史的最後一個循環)的寫法更好!(以上是指公式效果)
回覆: [問題]如何只顯示最後一個循環的編號?
引用:
最初由 Markchu7 發表
源碼如下:
STDBKH:=REF(REF(H,BARSLAST(O>C)),1),COLORBLUE;
N1BK:=O>C AND H>STDBKH;
N1BKL:=REF(L,BARSLAST(N1BK));
N2BK:=L<N1BKL AND O>C AND SUM(L<N1BKL AND O>C,BARSLAST(N1BK)+1)=1;
N2BKL:=REF(L,BARSLAST(N2BK));
N3BK:=L<N2BKL AND O>C AND SUM(L<N2BKL AND O>C,BARSLAST(N2BK)+1)=1;
N3BKL:=REF(L,BARSLAST(N3BK));
N4BK:=L<N3BKL AND O>C AND SUM(L<N3BKL AND O>C,BARSLAST(N3BK)+1)=1;
N4BKL:=REF(L,BARSLAST(N4BK));
N5BK:=L<N4BKL AND O>C AND SUM(L<N4BKL AND O>C,BARSLAST(N4BK)+1)=1;
DRAWTEXT(N1BK,H,'1'),COLORBLACK,PXUP65,ALIGN0;
DRAWTEXT(N2BK,H,'2'),COLORBLACK,PXUP65,ALIGN0;
DRAWTEXT(N3BK,H,'3'),COLORBLACK,PXUP65,ALIGN0;
DRAWTEXT(N4BK,H,'4'),COLORBLACK,PXUP65,ALIGN0;
DRAWTEXT(N5BK,H,'5'),COLORBLACK,PXUP65,ALIGN0;
請指導:1.有無簡潔的寫法不需要一根一根地寫下去?
2.如何只顯示最後一個循環的編號?而不會重疊?(以上是指繪圖效果)如果可以有只保留單獨一個循環(是連續的單獨一個循環!而非歷史的最後一個循環)的寫法更好!(以上是指公式效果)
原碼:
OO:=O; CC:=C; LL:=L;
STDBKH:=REF(REF(H,BARSLAST(O>C)),1),COLORBLUE;
N1BK:=O>C AND H>STDBKH;
SNo:=C*0;
For i= Lbound(N1BK) to datacount do begin
if N1BK[i] then begin
CN:=1; SNo[i]:=CN; RL:=LL[i];
end else begin
if LL[i]<RL and OO[i]>CC[i] then begin
CN:=CN+1; SNo[i]:=CN; RL:=LL[i];
end;
end;
end;
DRAWNUMBER(SNo>0,H,SNo,0),COLORBLACK,PXUP65,ALIGN0;
感謝指導!正合所需!
再請指導:如果兩個循環中至少要包含一根C>=O的K棒要如何寫?(我想到的是:SUM(C>=O,BARSLAST(SNo<>0)+1)>0,的方式,可是這樣應該要用迴圈,我就不會了!
附圖框框處就是例子(只不過是紅棒罷了),請指導!
補一個黑K棒的圖!
引用:
最初由 Markchu7 發表
再請指導:如果兩個循環中至少要包含一根C>=O的K棒要如何寫?(我想到的是:SUM(C>=O,BARSLAST(SNo<>0)+1)>0,的方式,可是這樣應該要用迴圈,我就不會了!
附圖框框處就是例子(只不過是紅棒罷了),請指導!
SNo=1為一次循環的開始SNo=2,SNo=3......到下一次SNo=1之間至少要包含一根C>=O的K棒!謝謝!
引用:
最初由 Markchu7 發表
SNo=1為一次循環的開始SNo=2,SNo=3......到下一次SNo=1之間至少要包含一根C>=O的K棒!謝謝!
原碼:
OO:=O; CC:=C; LL:=L;
STDBKH:=REF(REF(H,BARSLAST(O>C)),1),COLORBLUE;
N1BK:=O>C AND H>STDBKH;
SNo:=C*0; Rst:=1;
For i= Lbound(N1BK) to datacount do begin
if N1BK[i] and Rst=1 then begin
CN:=1; SNo[i]:=CN; RL:=LL[i]; Rst:=0;
end else begin
if CC[i]>=OO[i] then begin
Rst:=1;
end else if LL[i]<RL and OO[i]>CC[i] then begin
CN:=CN+1; SNo[i]:=CN; RL:=LL[i];
end;
end;
end;
DRAWNUMBER(SNo>0,H,SNo,0),COLORBLACK,PXUP65,ALIGN0;
感謝總版主辛勞,為狐友解惑!
比對總版主指導的公式發現有些疑問,再請指導!
附圖虛線的源碼如下:
VERTLINE(ALL(C<O,2) AND H>REF(H,1) AND L<REF(L,1)),COLORBLUE,LINEDOT;
請教:1.為何左邊是由1到2繼續算,而右邊則是由2跳回1重新算?
2.左邊由1到2繼續算是我希望呈現的效果!
再次感謝總版主的辛勞!
引用:
最初由 Markchu7 發表
感謝總版主辛勞,為狐友解惑!
比對總版主指導的公式發現有些疑問,再請指導!
附圖虛線的源碼如下:
VERTLINE(ALL(C<O,2) AND H>REF(H,1) AND L<REF(L,1)),COLORBLUE,LINEDOT;
請教:1.為何左邊是由1到2繼續算,而右邊則是由2跳回1重新算?
2.左邊由1到2繼續算是我希望呈現的效果!
再次感謝總版主的辛勞!
喔!原來如此!那就是我的錯!
我的原意是:
SNo<>0跟SNo=1之間包含至少一根C>=O而非SNo=1跟SNo=1之間包含至少一根C>=O!讓右邊可以呈現出左邊的效果!可以麻煩總版主再次協助嗎?感謝您!
引用:
最初由 Markchu7 發表
喔!原來如此!那就是我的錯!
我的原意是:
SNo<>0跟SNo=1之間包含至少一根C>=O而非SNo=1跟SNo=1之間包含至少一根C>=O!讓右邊可以呈現出左邊的效果!可以麻煩總版主再次協助嗎?感謝您!
原碼:
OO:=O; CC:=C; LL:=L;
STDBKH:=REF(REF(H,BARSLAST(O>C)),1),COLORBLUE;
N1BK:=O>C AND H>STDBKH;
SNo:=C*0; Rst:=1;
For i= Lbound(N1BK) to datacount do begin
if N1BK[i] and Rst=1 then begin
CN:=1; SNo[i]:=CN; RL:=LL[i]; Rst:=0;
end else begin
if CC[i]>=OO[i] then begin
Rst:=1;
end else if LL[i]<RL and OO[i]>CC[i] then begin
CN:=CN+1; SNo[i]:=CN; RL:=LL[i]; Rst:=0;
end;
end;
end;
DRAWNUMBER(SNo>0,H,SNo,0),COLORBLACK,PXUP65,ALIGN0;
感謝指導!有您真好!
引用:
最初由 Markchu7 發表
感謝指導!有您真好!
附圖虛線源碼:DATE<>REF(DATE,1);
請問規則可以針對開盤作個別的處理嗎?
我知道開盤當根無法形成新的循環是因為'SNo<>0跟SNo=1之間包含至少一根C>=O'這個條件!也就是說如果是開盤當根K棒,不需受此條件限制!如此的規則效果是否能實現?
不好意思再次麻煩,都怪自己的思考邏輯不夠慎密,盤面狀況又很多,沒法子一次全部考慮進去,只好再次麻煩您!謝謝!
全部時間均為台灣時間, 現在時間為22:37 | 總頁數 (2): [1] 2 » 在這個頁面顯示本主題全部的 28 個文章 |
Powered by: vBulletin Version 2.3.0 - Copyright©2000-, Jelsoft Enterprises Limited.
簡愛洋行 製作 Copyright 2003-. All Rights Reserved.