跌破開盤價站上開盤價

  •   872 
  • 最後發表   blue sky  2023 三月 10
blue sky 發文於   2021/06/20

請問小幫手,下列為跌破開盤價站上開盤價的腳本

 

input:_time(090500, "過此時段(HHMMSS)才開始監控");

if currenttime < _time then return; //在指定時段後才開始判斷。

var: _count(0);

if getfielddate("Date") <> getfielddate("Date")[1] then _count = 0;

//注意開盤價不能用在回測。

if close cross under getfield("Open", "D") then _count = 1;

if _count = 1 and close cross over getfield("Open", "D") then ret = 1;

 

如果我想再滿足下列2個條件,該如何寫出腳本,再麻煩小幫手協助,謝謝

1.量比1.5以上

2.內外盤比%60以上

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

Hello blue sky,

 

您可以使用 量比 內盤量 外盤量 函數。

可以將腳本修改為:

input:_time(090500, "過此時段(HHMMSS)才開始監控");

var: _count(0);

 

if currenttime < _time then return;    //在指定時段後才開始判斷。

if getfielddate("Date") <> getfielddate("Date")[1] then _count = 0; 

if close cross under getfield("Open", "D") then _count = 1;

condition1 = GetField("量比") > 1.5;    //量比1.5以上

condition2 = (GetField("內盤量") / GetField("外盤量")) > 0.6;    //內外盤比60%以上

if _count = 1 and condition1 and condition2 and close cross over getfield("Open", "D") then ret = 1;

print(date, time, _count, GetField("量比"), GetField("內盤量"), GetField("外盤量"));

blue sky 發文於   2021/06/23

小幫手你好:

剛剛用你修改後的腳本,啟動策略雷達,有顯示錯誤訊息如下,再請小幫手協助,謝謝

計算停止,請檢查腳本算式是否有分母為0

 

XQ小幫手 發文於   2021/06/24

Hello blue sky,

 

錯誤的原因應該是 condition2 = (GetField("內盤量") / GetField("外盤量")) > 0.6; 這行。

可以修改為

if GetField("外盤量") <> 0 then condition2 = (GetField("內盤量") / GetField("外盤量")) > 0.6

    else condition2 = False;

即可。

附上警示腳本供您參考。

附加文件

blue sky 發文於   2021/06/24

小幫手你好:

附檔警示腳本是否誤植,再請小幫手協助確認,謝謝

XQ小幫手 發文於   2021/06/25

Hello blue sky,

 

抱歉附上了錯誤的警示警本。

已更正,感謝提醒。

附加文件

blue sky 發文於   2021/06/29

請問小幫手,如果我用1K執行這個腳本.如果量比跟內外盤比都有符合條件.

那觸發警示腳本是會在怎樣的狀態下觸發?

例如第51K收盤跌破開盤價,71K收盤突破開盤價,這樣會觸發嗎?(量比跟內外盤比都有符合條件)

因為今天用策略雷達下去測試,都沒有觸發,或是我那邊設定需要調整?

再麻煩小幫手協助

XQ小幫手 發文於   2021/06/30

Hello blue sky,

 

小幫手認為應該是 量比 內盤量 外盤量 的條件不吻合。

 

如果您用在1分鐘頻率上的話,是以1分鐘的內外盤比以及該分鐘的量比作運算。

若是要當日累積的內外盤比及量比的話,您需要將 GetField("內盤量"), GetField("外盤量"), GetField("量比")修改為 GetField("內盤量, "D"), GetField("外盤量", "D"), GetField("量比", "D") 跨頻率才行。

請注意量比日頻率不支援回測。

您可以觀察print出來的資訊來判斷是否有誤。

 

需要麻煩您提供是什麼時候,在哪個商品上有發生您覺得應該要觸發但沒有的錯誤來讓小幫手進一步檢視問題原因,感謝。

blue sky 發文於   2021/07/01

感謝小幫手

Soros Chen 發文於   2023/03/08

最帥的小幫手您好 請問我要設定跌破開盤價跟跌破均線通知我,要如何設定

XQ小幫手 發文於   2023/03/10

Hello Soros Chen,

 

小幫手建議您可以先看看網站上的教學區,裡面有XS語法的基礎和應用可以閱覽。

 

您可以用變數紀錄開盤價,並用 均價 欄位來取得平均價格。

舉例來說:

value1 = getfield("Open", "D");

if close cross under value1 then ret = 1;   //成交價跌破開盤價

 

value2 = getfield("均價");

if close cross under value2 then ret = 1;   //成交價跌破均價

 

發表回覆
Close