警示通知詢問

  •   9 
  • 最後發表   jesseh1970  23 小時前
jesseh1970 發文於   2026/06/18

我寫了1個指標,同時對應一個相同的警示。並且設定於策略雷達中通知(電腦,手機),但是電腦中的警示只有顯示script的名字,並沒有顯示程式中標註的條件。手機則是沒有收到通知。請幫忙解答,謝謝。

// XS 類型:指標(主圖)

Input: Per(20), MarkMult(2.5), StartHM(0);

Vars: Vw(0), Dv(0), Sd(0), Up(0), Lo(0);

Vw = GetField("均價");

Dv = Close - Vw;

Sd = StandardDev(Dv, Per, 1);

 

// ── 三組 σ 帶 ──

Plot1(Vw,            "VWAP");

Plot2(Vw + 1.0*Sd,  "+1σ");

Plot3(Vw - 1.0*Sd,  "-1σ");

Plot4(Vw + 2.0*Sd,  "+2σ");

Plot5(Vw - 2.0*Sd,  "-2σ");

Plot6(Vw + 2.5*Sd,  "+2.5σ");

Plot7(Vw - 2.5*Sd,  "-2.5σ");

 

// ── 標記:觸/回歸用 MarkMult(預設2.5σ)那條 ──

Up = Vw + MarkMult * Sd;

Lo = Vw - MarkMult * Sd;

If Time >= StartHM and CrossOver(Close, Up)  then Plot8(High,  "觸上界");

If Time >= StartHM and CrossUnder(Close, Lo) then Plot9(Low,   "觸下界");

If Time >= StartHM and CrossUnder(Close, Up) then Plot10(High, "上緣回歸");

If Time >= StartHM and CrossOver(Close, Lo)  then Plot11(Low,  "下緣回歸");

 

 

// XS 類型:警示

Input: Per(60), MarkMult(2.5), ZPer(40), ZTh(1.5), StartHM(900);

Vars: Vw(0), Dv(0), Sd(0), Up(0), Lo(0), NgT(0);

Vars: Sp(0), Bs(0), Mu(0), Sg(0), Zs(0);

NgT = 0 - ZTh;

 

// VWAP ±MarkMult σ 帶(計算用,不畫)

Vw = GetField("均價");

Dv = Close - Vw;

Sd = StandardDev(Dv, Per, 1);

Up = Vw + MarkMult * Sd;

Lo = Vw - MarkMult * Sd;

 

// 價差 Z(自動對應現股)

Sp = GetSymbolField("Underlying", "收盤價");

Bs = Close - Sp;

Mu = Average(Bs, ZPer);

Sg = StandardDev(Bs, ZPer, 1);

Zs = 0;

If Sg > 0 then Zs = (Bs - Mu) / Sg;

 

// 觸發 + 訊息

If Time >= StartHM then begin

    If CrossOver(Close, Up)  and Zs >= ZTh then begin ret=1; retmsg="觸上界+Z(偏空)"; end;

    If CrossUnder(Close, Lo) and Zs <= NgT then begin ret=1; retmsg="觸下界+Z(偏多)"; end;

    If CrossUnder(Close, Up) and Zs >= ZTh then begin ret=1; retmsg="上緣回歸+Z(偏空)"; end;

    If CrossOver(Close, Lo)  and Zs <= NgT then begin ret=1; retmsg="下緣回歸+Z(偏多)"; end;

end;

 

虎科大許教授 發文於   2026/06/18

(1)執行頻率必須是分鐘頻率。

(2)請將

StartHM(900)

改成

StartHM(90000)

發表回覆
Close