請教XQ自訂指標怎麼只繪製當天09:00:00以後就好(不畫昨天)

  •   204 
  • 最後發表   q0952  2023 六月 15
q0952 發文於   2023/06/15

你好,想請教小幫手XQ在自訂指標時可以只繪製當天就好嗎?

舉例來說我在一分K背景,套用指標如下

 

variable:tv(0),tvystd(0);

 

if date<>date[1] then

 tv=volume

else

 tv=tv[1]+volume;

 

if tv <> 0 and tv[270] <>0

then value1=round((tv/tv[270]-1)*100,2);

 

plot1(value1,"Vs%");

 

這樣一來 原則上是會得到我想要的東西,但是繪製成指標時一定會畫出270根指標

我實際上只需要今天的就好

昨天的圖形一起在線圖上,對不熟練的我來說在視覺上有點困擾

試過在設定裡把XS指標成只繪製一天[1分K],但狀況還是沒變

想請教是否有其他寫法、或是相關設定可以調整,謝謝

排序方式: 標準 | 最新
bowen 發文於   2023/06/15

給你參考 以成交量為例

settotalBar(300);
input:z(1,"平日1 or 假日0");

// 平日 or 假日開關
    if z = 1 then condition1 = date = currentDate
    else condition1 = date <> currentDate or time >= 000000 and time <= 085900;
var:i(0);

if date <> date[1] then i = 0;

if condition1 then begin
    if SymbolExchange = "TW" and date <> date[i+1] then begin
        plot1(volume);
        i = i + 1;
    end;
    if symbolType = 3 then begin
        plot1(volume);
    end;
end;

平日改 z = 1

假日 or 半夜12點後 改 z = 0

XQ小幫手 發文於   2023/06/15

Hello q0952,

 

您可以參考 bowen 的作法。

或是可以在 input 設定開始畫的日期。

舉例來說:

input: _date(20230615);

variable:tv(0),tvystd(0);

 

if date >= _date then begin

    if date<>date[1] then tv=volume else tv=tv[1]+volume;

    if tv <> 0 and tv[270] <>0 then value1=round((tv/tv[270]-1)*100,2);

    plot1(value1,"Vs%");

    end;

這樣腳本就會在設定的日期(20230615)當日及之後的日期才畫出指標。

 

感謝 bowen 的熱心回覆。

q0952 發文於   2023/06/15

謝謝Bowen和小幫手先後詳細的說明,獲益良多。

發表回覆
Close