腳本合併觸發警示異常

  •   132 
  • 最後發表   blue sky  2021 八月 12
blue sky 發文於   2021/08/06

小幫手您好,又要麻煩您提點了

我用2個腳本(1分K急跌1%與1分K成交價創新低),2個腳本分開使用是正常的,

但我想要合併成一個腳本,同時符合2個條件,才會觸發警示,我自己修改了幾次合併腳本,

但只要滿足創新低這個條件就會觸發警示,再麻煩小幫手協助看一下腳本那裡需要修改,謝謝

合併腳本如下:

input:_Change(1,"門檻跌幅(%)");

value1 = rateofchange(close,1);

if value1 < -_Change

and volume > volume[1]  =false  then  return;

variable:IntrabarPersist DHigh(0), IntrabarPersist DLow(0),strDHigh(""),strDLow("");

if getinfo("IsRealTime") <> 1 then return; //即時成交更新資料才開始判斷。

//只需要執行一次去更新目前的最高價與最低價。

once(true) begin

DHigh = getfield("High", "D");

DLow = getfield("Low", "D");

end;

//用以下 if 判斷當收盤價創當日新低,則觸發警示,並在執行紀錄秀出相關資料。

if close < DLow then begin

strDLow = text("收盤價=",close,"創當日新低。前次新低價為=",DLow);

retmsg = strDLow;

ret = 1;

DLow = close;

end;

排序方式: 標準 | 最新
XQ小幫手 發文於   2021/08/10

Hello blue sky,

 

您在將兩個警示腳本結合時,應該是要將兩個條件結合起來,像是 if condition1 and condition2 then ret = 1; 這樣。

if value1 < -_Change and volume > volume[1]  =false  then  return;

這行小幫手猜測應該是您的1分K急跌條件,所以不應該是return,而是:

condition1 = value1 < -_Change and (volume > volume[1]) = false;

然後再將condition1加入下面判斷收盤價創新低的判斷式裡面即可。

附上匯出的警示腳本供您參考。

附加文件

blue sky 發文於   2021/08/12

謝謝小幫手提點

發表回覆
Close