小幫手您好:
XS程式如下
Variable:S_high(0);
if time = 093000
then S_high = highD(0);
if close crosses over S_high
then ret=1;
問題是斷線後S_high就不會通知
請問程式該怎麼修改在斷線後S_high還可以繼續通知
煩請幫忙解答,謝謝!!
小幫手您好:
XS程式如下
Variable:S_high(0);
if time = 093000
then S_high = highD(0);
if close crosses over S_high
then ret=1;
問題是斷線後S_high就不會通知
請問程式該怎麼修改在斷線後S_high還可以繼續通知
煩請幫忙解答,謝謝!!
Hi 小幫手
我的設定跟你的附件是一樣的
我的意思是恢復連線後S_high就不會繼續執行
有沒有什麼方法我要在0930後當價格突破0930前的最高點提示我
而且要在斷線後恢復連線還能提示價格突破0930的最高點,謝謝!!
Hello moushin,
需注意如果條件達成是在斷線中間的話,然後恢復連線的時 close 已經大於 S_high 那麼條件自然不會成立。
只有在連線狀態下 close 向上跨越 S_high 的話才會警示。
或許你可以考慮將其修改為 close > S_high ,這樣只要連線恢復後價格大於 S_high 的話就會警示,可以避開 cross over 發生在斷線的狀況下沒有警示的情況。
又或是將其改為用變數保存條件,當變數符合時警示。
舉例來說:
var: intrabarpersist _cond(False), S_high(0);
if issessionfirstbar then _cond = False;
if time = 093000 then S_high = highD(0);
if close crosses over S_high then _cond = True;
if _cond then ret = 1;
這樣就算條件達成是在斷線中間,_cond 還是會維持在True。
Hello moushin,
建議您可以在腳本上加上print,印出來確認條件是否有達成,腳本是否有如您所想的運行。
如果想確認問題原因,麻煩提供 策略雷達匯出檔勾選(包含)警示腳本、XQ Log 並告知您覺得要觸發但沒觸發的商品日期時間 讓相關人員確認。
Log資料夾(預設路徑:C:\SysJust\XQLite\LOG)直接壓縮後提供即可。
您可以直接將檔案上傳,如果檔案過大的話也可以Mail至客服信箱 XQservice@XQ.com.tw 且務必附上 討論文章連結網址(小幫手才能盡早處理)。
感謝。
Hello moushin,
小幫手不知道您使用的8K++跟TEST腳本是如何撰寫,策略是如何設定的。
而這些細節比較可能是策略沒有觸發的原因,您提供的截圖無法讓小幫手看出問題原因。
如果可以的話,麻煩提供兩個策略的策略雷達匯出檔勾選(包含)警示腳本,這樣才有辦法研究問題出在哪裡。
另外根據您的截圖,您這個測試是使用在 2731 上,日期為 2022/12/20 是嗎?
Hi 小幫手
我有請XQ的業務將LOG及腳本和此網頁轉給你喔
Hello moushin,
目前小幫手這邊只有收到您的Log而已。
HI 小幫手
我LOG跟策略雷達腳本有一起壓縮給你,我這邊會再重新給匯出的雷達給你
14 評論