奇狐社區論壇 總頁數 (5): [1] 2 3 » ... 最末頁 »
在這個頁面顯示本主題全部的 61 個文章

奇狐社區論壇 (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=19056)


由 a9681054 在 2015-01-16 15:13 發表:

請教劃水平線向右延長

S1:=C>ref(C,1) and C>refx(C,1);
S2:=C<ref(C,1) and C<refx(C,1);
DRAWSL(S1 ,C,0,10,3)colorred;//波峰劃水平線
DRAWSL(S2 ,C,0,10,3)colorgreen;//波谷劃水平線

需求說明:
1)主圖為價位線
2)當價位線比收盤價小時,該水平線即停止,否則繼續延伸.
3)當價位線比收盤價大時,該水平線即停止,否則繼續延伸.

以上麻煩版主協助,謝謝~

__________________
chiu


由 cgjj 在 2015-01-16 16:55 發表:

回覆: 請教劃水平線向右延長

引用:
最初由 a9681054 發表
S1:=C>ref(C,1) and C>refx(C,1);
S2:=C<ref(C,1) and C<refx(C,1);
DRAWSL(S1 ,C,0,10,3)colorred;//波峰劃水平線
DRAWSL(S2 ,C,0,10,3)colorgreen;//波谷劃水平線

需求說明:
1)主圖為價位線
2)當價位線比收盤價小時,該水平線即停止,否則繼續延伸.
3)當價位線比收盤價大時,該水平線即停止,否則繼續延伸.

以上麻煩版主協助,謝謝~



該價位線會剛好等於收盤價的情況很少
除起畫點外,任何時間 2) 和 3) 幾乎必定其中會有一個成立
也就是說,有畫幾乎等於沒畫,請定義合理條件!!


由 a9681054 在 2015-01-16 22:20 發表:

因近期剛開始在學習水平線指標寫作,補上需求圖片可能會比較清楚,有勞版主多費心指導~

__________________
chiu


由 a9681054 在 2015-01-16 22:32 發表:

對不起,上一張圖片有誤,以第二張為主

__________________
chiu


由 cgjj 在 2015-01-19 09:18 發表:

引用:
最初由 a9681054 發表
對不起,上一張圖片有誤,以第二張為主


每個成立位置都要往後追觸碰點,此公式計算量較大
建議設定 MaxKBar, 僅畫近期N根K棒
MaxKBar 數值越大跑越慢, 設為零代表全部

原碼:

CC
:=C;
S1:=C>ref(C,1) and C>refx(C,1);
S2:=C<ref(C,1) and C<refx(C,1);
SS:=S1-S2DW:=C*0;
MaxKBar:=0//僅畫近期N根K棒, 零則畫全部
StNo:=datacount-MaxKBar+1;
if 
StNo<lbound(SS) or MaxKBar=0 then StNo:=lbound(SS);
for 
iStNo to datacount do begin
  
if SS[i] <> 0 then begin
    
for j=i+1 to datacount do begin
      
if SS[i]=and CC[j]>CC[i] or SS[i]=-and CC[j]<CC[ithen begin
        DW
[i]:=j-i; break;
      
end;
    
end;
  
end;
end;

DRAWSL(SS>and DW>,C,0,DW,3colorred pxdn2;//波峰劃水平線
DRAWSL(SS<and DW>0,C,0,DW,3colorgreen pxdn2;//波谷劃水平線


由 a9681054 在 2015-01-19 14:03 發表:

版主你好,
感謝你的回覆,已有達到原初步的想法,其實我最終是想用k線並不是價位,我的主圖是moon這個指標,等我想好定義再跟版主繼續請教~

__________________
chiu


由 a9681054 在 2015-01-19 18:29 發表:

版主你好,
大致需求想法整理如下:
1)當k棒碰觸或上穿S1位置(粗線),原線維持不改變.
2)當符合S1條件時,水平線向右延伸,直至右方K棒碰觸或上穿延伸線時(細線),下一根K棒即停止劃線.
3)當k棒碰觸或下穿S2位置(粗線),原線維持不改變.
2)當符合S2條件時,水平線向右延伸,直至右方K棒碰觸或下穿延伸線時(細線),下一根K棒即停止劃線.

源碼:
//MOON 公式
Var4:=(LOW+HIGH+CLOSE)/3;
操作:= MA(Var4,5),colorGREEN,linethick2;
多頭關卡:HHV(操作,13),colorMAGENTA,linethick2;
空頭關卡:LLV(操作,13),colorcyan,linethick2;


//劃水平線
S1:=空頭關卡=REF(空頭關卡,1);
S2:=多頭關卡=REF(多頭關卡,1);

DRAWSL(S1 ,空頭關卡,0,10,3)colorblue pxdn3 ;//劃水平線,3表示劃線向右
DRAWSL(S2 ,多頭關卡,0,10,3)colorred pxdn3 ;//劃水平線,3表示劃線向右


註:
需求如圖片中的下半部

以上煩請版主再次協助,謝謝~

__________________
chiu


由 a9681054 在 2015-01-19 21:57 發表:

更正一下內容:
1)當符合S1條件時,水平線向右延伸出(細線)
2)當k棒碰觸或上穿S1位置(粗線),原粗線維持不改變,水平線繼續向右延伸(細線)
3)直至右方K棒碰觸或上穿延伸線時(細線),下一根K棒即停止劃線.

4)當符合S2條件時,水平線向右延伸出(細線)
5)當k棒碰觸或下穿S1位置(粗線),原粗線維持不改變,水平線繼續向右延伸(細線)
6)直至右方K棒碰觸或下穿延伸線時(細線),下一根K棒即停止劃線.

__________________
chiu


由 a9681054 在 2015-01-19 22:01 發表:

對不起,字打錯再更正一下內容:
1)當符合S1條件時,水平線向右延伸出(細線)
2)當k棒碰觸或上穿S1位置(粗線),原粗線維持不改變,水平線繼續向右延伸出(細線)
3)直至右方K棒碰觸或上穿延伸線時(細線),下一根K棒即停止劃線.

4)當符合S2條件時,水平線向右延伸出(細線)
5)當k棒碰觸或下穿S2位置(粗線),原粗線維持不改變,水平線繼續向右延伸出(細線)
6)直至右方K棒碰觸或下穿延伸線時(細線),下一根K棒即停止劃線.

__________________
chiu


由 cgjj 在 2015-01-20 08:35 發表:

引用:
最初由 a9681054 發表
版主你好,
大致需求想法整理如下:
1)當k棒碰觸或上穿S1位置(粗線),原線維持不改變.
2)當符合S1條件時,水平線向右延伸,直至右方K棒碰觸或上穿延伸線時(細線),下一根K棒即停止劃線.
3)當k棒碰觸或下穿S2位置(粗線),原線維持不改變.
2)當符合S2條件時,水平線向右延伸,直至右方K棒碰觸或下穿延伸線時(細線),下一根K棒即停止劃線.

源碼:
//MOON 公式
Var4:=(LOW+HIGH+CLOSE)/3;
操作:= MA(Var4,5),colorGREEN,linethick2;
多頭關卡:HHV(操作,13),colorMAGENTA,linethick2;
空頭關卡:LLV(操作,13),colorcyan,linethick2;


//劃水平線
S1:=空頭關卡=REF(空頭關卡,1);
S2:=多頭關卡=REF(多頭關卡,1);

DRAWSL(S1 ,空頭關卡,0,10,3)colorblue pxdn3 ;//劃水平線,3表示劃線向右
DRAWSL(S2 ,多頭關卡,0,10,3)colorred pxdn3 ;//劃水平線,3表示劃線向右


註:
需求如圖片中的下半部

以上煩請版主再次協助,謝謝~



引用:
最初由 a9681054 發表
對不起,字打錯再更正一下內容:
1)當符合S1條件時,水平線向右延伸出(細線)
2)當k棒碰觸或上穿S1位置(粗線),原粗線維持不改變,水平線繼續向右延伸出(細線)
3)直至右方K棒碰觸或上穿延伸線時(細線),下一根K棒即停止劃線.

4)當符合S2條件時,水平線向右延伸出(細線)
5)當k棒碰觸或下穿S2位置(粗線),原粗線維持不改變,水平線繼續向右延伸出(細線)
6)直至右方K棒碰觸或下穿延伸線時(細線),下一根K棒即停止劃線.



水平線若是穿越跳空的K棒,現在無K棒區域,如何處理


由 a9681054 在 2015-01-20 09:27 發表:

版主你好,
這樣的情況,就比照第3及6定義,當延伸(細線)被直接跳空向上或向下穿越,下一根k棒即停止劃線.

__________________
chiu


由 cgjj 在 2015-01-20 10:28 發表:

引用:
最初由 a9681054 發表
版主你好,
這樣的情況,就比照第3及6定義,當延伸(細線)被直接跳空向上或向下穿越,下一根k棒即停止劃線.




還有一個問題
S1:=空頭關卡=REF(空頭關卡,1);
S2:=多頭關卡=REF(多頭關卡,1);
這邊的 S1 與 S2 有連續好幾根成立的狀況
而且會有 S1=S2 的情況


並非前面的這種波峰波谷狀態:
S1:=C>ref(C,1) and C>refx(C,1);
S2:=C<ref(C,1) and C<refx(C,1);

請再次確認定義是否OK


由 a9681054 在 2015-01-20 11:01 發表:

版主你好,
你說的沒有錯,會有連續好幾根符合S1及S2條件情況,那就以第2及5來處理.

至於S1=S2情況,也是有可能發生,依我的了解前波或更早的波會與當下重疊,但本波應該較無此問題存在,不過這是我個人見解,程式方面實在不知如何表達,還望版主協助,謝謝~

__________________
chiu


由 cgjj 在 2015-01-20 11:16 發表:

引用:
最初由 a9681054 發表
版主你好,
你說的沒有錯,會有連續好幾根符合S1及S2條件情況,那就以第2及5來處理.

至於S1=S2情況,也是有可能發生,依我的了解前波或更早的波會與當下重疊,但本波應該較無此問題存在,不過這是我個人見解,程式方面實在不知如何表達,還望版主協助,謝謝~



舉例來說
當有連續好幾根符合S1時
不同K棒的 S1 繪畫之延伸水平線會有相疊的情況
畫面上可能會導致無法分辯是誰的畫的線
進而無法比對


由 a9681054 在 2015-01-20 11:26 發表:

版主你好,
當開始符合S1及S2時,那劃線就從條件成立時的前一根(即空頭關卡及多頭關卡走平時前一根)開始劃線,是否可解決你說的問題?

__________________
chiu


全部時間均為台灣時間, 現在時間為21:07 總頁數 (5): [1] 2 3 » ... 最末頁 »
在這個頁面顯示本主題全部的 61 個文章


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

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