繪圖指標~寶塔線~繪圖需求

  •   623 
  • 最後發表   JC  2022 五月 26
JC 發文於   2022/05/24

HI 小幫手,

有關於寶塔線的繪圖,我已經先瀏覽過XQ討論區的文章,

因為文章當大部分是針對選股,我的需求剛好是繪圖,方向有點不同,想請教。

我想拿下面這篇文章的程式碼來做變更,

 

如何寫XS語法抓寶塔線由綠翻紅第一根呢?

 

如何自行撰寫寶塔線指標

 

但是有些狀況需要協助,請見附圖。

1. 討論區的附件檔雖然可以做到繪出第一根由綠翻紅,或是由紅翻綠,但是相對的位置不對,

XQ內建的是"價位座標",討論區的是2~(-2)的座標。

2. 討論區的附件檔無法在分鐘級距下執行,且在日線頻率下無法顯示當日,可否做到像是XQ內建。

3. 能否提供XQ內建的"寶塔線"原始碼讓使用者自行修改。

4. 或是能小小幫手幫忙撰寫"XQ內建寶塔線繪圖指標+第一根翻紅翻黑AND黑翻紅"

 

 

 

另外關於下面這篇文章

"如何自行撰寫寶塔線指標"

官方FB在2018/10/31的回覆是:系統內建的寶塔線樣式,目前XS不支援,指標相關設定可以參考官網說明頁:

https://forum.xq.com.tw/....../%E5%A6%82%E4%BD%95%E8....../

實在有點看不懂,"系統內建的寶塔線樣式,目前XS不支援"

都已經可以在副圖中顯示了,為什麼不支援呢,還是是以前的版本不支援呢?

 

 

參考的程式碼如下:

//如何自行撰寫寶塔線指標

input:TWR(3);

variable:HH(0),LL(0);

HH = highest(close,TWR+1)[1];

 

LL = lowest(close,TWR+1)[1]; 

if close > HH then 

begin

value1 = 1;

 

end

else if close < LL then 

begin

value1 = -1;

end;

value100 =absvalue(close -  GetField("RefPrice"))/GetField("RefPrice")*100;

 

if value1[1]=-1 and value1 = 1

 

then begin

plot1(value100,"翻紅");

end

 

else if value1[1]=1 and value1 = 1

then begin

plot2(value100,"續紅");

end

 

else if value1[1]=1 and value1 = -1

then begin

plot3(-value100,"翻黑");

end

else if value1[1]=-1 and value1 = -1

then begin

plot4(-value100,"續黑"); 

end;

附加文件

XQ小幫手 發文於   2022/05/26

Hello JC,

 

1.您可以看到您附上的腳本畫出的是value100,而 

value100 =absvalue(close -  GetField("RefPrice"))/GetField("RefPrice")*100;

是在計算百分比。

由於XS腳本無法作出像系統內建的那樣的柱圖,最接近的辦法您可以參考 雲帶型指標的制作方法,藉由兩個plot相疊來達到類似的效果。

附上簡單修改指標範例。

 

2.小幫手這邊可以顯示當日。(參考附圖)

至於無法在分鐘頻率下執行是因為參考價 GetField("RefPrice") 只有日頻率資訊。

所以如果您要用在分鐘頻率上,需要將其改成 GetField("RefPrice", "D")。

需注意這樣value1[1] 就會是上一根Bar (分鐘)的資訊。

如果您還是要取上一日的資訊的話,請參考 xf_GetValue。

http://xshelp.xq.com.tw/XSHelp/?HelpName=xf_GetValue&group=FREQUENCYFUNC

 

3.系統內建的寶塔線是直接撰寫在XQ裡,並非透過XS腳本計算得出。

所以無法提供。

 

4.小幫手這邊也無法修改系統內建的指標。

 

5.系統內建的寶塔線樣式,目前XS不支援 => 小幫手不知道當初回覆的人的意思,但小幫手推測應該是指此指標是由系統運算,而不是透過撰寫XS指標來達成。

附加文件

發表回覆
Close