指定K棒畫線,但是畫出來的線要怎麼變成水平線。

  •   179 
  • 最後發表   Abel. Yang  2023 三月 09
Abel. Yang 發文於   2023/03/06

哈囉~最近來寫新東西有個小疑問。

我下面是寫

"只要漲跌幅有超過1%的K棒,且 當日最高價-最低價 > ATR20日的均值
在該K棒的高低點,畫上一條水平線。但是它把每一個都連起來了。
我只想要有符合條件的K棒,高低點畫上水平線。 "

1.0 是不是要用 "islastbar" 這個函數,要怎麼接放進去啊?

2.0 我爬了一些文,雖然還是搞不懂,但是不是能寫成。
限定某段時間區間資料,然後只把標示出來的K棒畫出水平線後,只需要延伸到下一個出現的K棒?
這樣子是不是就不,鎖死在一定要化水平線。因為plot會把所有個都會連線。

 

// XQ: ATR指標

//

input: Length(20);

 

SetInputName(1, "天數");

 

value1 = Average(TrueRange, Length);

 

 

condition1 = close > close[1]* 1.01; //漲跌幅超過1%

condition2 = high-low > value1; //高低差大於ATR20天均值

condition3= ( close - open ) >(high -low) * 0.7;  //上漲實體K棒占了7成

condition4 = close > open;

 

 

// if islastBar = true then plot3(low,"支撐");

if condition1 and condition2 and condition3 and condition4

then plot1(low,"支撐"); // 在最低價劃一條線

 

 

condition5 = close < open;

condition6 = ( open - close) > ( high-low)*0.7;

condition7 = close < close[1]*1.01;

 

if condition7 and condition2 and condition5 and condition6

then plot2(high,"壓力");

 

XQ小幫手 發文於   2023/03/09

Hello Abel. Yang,

 

您可以參考小幫手在 指定K棒畫線,但是畫出來的線要怎麼變成水平線。 的回覆。

應該是要在條件符合時用變數保存當下所需數值,接著畫出該變數才會是一條線。

 

if condition1 and condition2 and condition3 and condition4 then plot1(low,"支撐");

這並不會是在條件符合後的低價畫一條線,而是在那個點會畫 low。

您會看到連線,是因為繪圖設定選擇線條,所以自動連起來。

發表回覆
Close