台灣50紅K判斷問題

  •   185 
  • 最後發表   Robert168  2022 十一月 03
Robert168 發文於   2022/10/26

小幫手您好

以下是我用getsymbolfield("TSE50.SJ","TW50紅K家數");寫的來判定大盤多空的雷達策略

(我測的狀況 getsymbolfield("TSE50.SJ","TW50紅K家數") 與盤中的狀況一直不符 )

在盤中的判斷似乎有誤,  盤中即使50成分上漲的家數較多 也是判斷空頭

可以請您看看 我的問題在哪邊嗎?

還有這函數可以用在盤中策略雷達 或交易腳本即時判定嗎?

==================以下為程式碼================================================

input:ratioA(53,"上漲家數比例做多啟動");

input:ratioB(53,"下跌家數比例做空啟動");

 

 

var: long_condition(false);

long_condition=(Value10/50)*100>ratioA;

 

var: short_condition(false);

short_condition=(Value11/50)*100>ratioB;

 

 

Value10=getsymbolfield("TSE50.SJ","TW50紅K家數","D");

value11=50-value10;

 

 

if  long_condition=true then ret=1;

     retmsg="多頭";

 

if  short_condition=true then ret=1;

     retmsg="空頭";

排序方式: 標準 | 最新
Robert168 發文於   2022/10/26

說明 

僅支援 TSE50.SJ 商品,支援「分鐘」回測。 建議撰寫方式:value1 = getsymbolfield("TSE50.SJ","TW50紅K家數"); 統計台灣50成分股內, 目前這根K棒是紅K棒的家數. 紅K棒的定義為,收盤價大於開盤價

說明是這樣

是否 我不能單獨定義為讀取日K 

 

 

 

Robert168 發文於   2022/10/27

 

用PRINT 來看 紅K的家數 在同一時間數字不樣,也跟真實的盤中狀況不一樣

想了解問題在哪? 感謝

可以協助幫忙測看看嗎?

 

XQ小幫手 發文於   2022/10/28

Hello Robert168,

 

小幫手認為應該是您撰寫的方式導致錯誤。

您是先判斷了 long_condition / short_condition ,接著才更新 value10 和 value11 的值。

換句話說,value10 和 value11 是上一根Bar的數值。

建議您調整腳本內容,將 value10 和 value11 移到 condition 條件前面。

Robert168 發文於   2022/10/28

小幫手您好

我改寫成這樣 但是PRINT判定出來的數值還是錯的

直接PRINT Value10 出來的數字也不符合

能否進一步指點 該怎寫?

input:ratioA(53,"上漲家數比例做多啟動");

input:ratioB(53,"下跌家數比例做空啟動");

 

 Value10=getsymbolfield("TSE50.SJ","TW50紅K家數","D");

value11=50-value10;

 

var: long_condition(false); { 進場買進作多 }

if (Value10/50)*100>ratioA then long_condition=true ;

 

var: short_condition(false); { 進場賣出做空 }

if (Value11/50)*100>ratioB then short_condition=true ;

 

if  long_condition=true then ret=1;

     retmsg="多頭";

 

if  short_condition=true then ret=1;

     retmsg="空頭";

 

Robert168 發文於   2022/10/30

單純寫這樣去跑PRINT

出來的數值 也是很奇怪

Value1=getsymbolfield("TSE50.SJ","TW50紅K家數","D");

if value1>0 then Setposition(1);

print("TW50紅K家數",value1);

 

XQ小幫手 發文於   2022/11/01

Hello Robert168,

 

小幫手這邊print出來和技術線圖上畫出來的值是相同的。 (參考附圖)

須注意 TW50紅K家數 無法用日頻率回測。

麻煩您提供 雷達匯出檔 並告知是什麼日期時間點和哪裡的資訊比較不一致。

您可以直接將檔案上傳,如果檔案過大的話也可以Mail至客服信箱 XQservice@XQ.com.tw 且務必附上 討論文章連結網址(小幫手才能盡早處理)。

 

第二張圖的部分小幫手這邊測試確實會發生相同情況,會請相關人員確認問題原因。

但如果您使用其他頻率 (ex. 1分鐘) 的話,出來的值會是正常的。

感謝。

附加文件

Robert168 發文於   2022/11/01

謝謝小幫手幫忙

小幫手您說(須注意 TW50紅K家數 無法用日頻率回測) 。

我不是回測,我是要及時判斷當下 台灣50的成分股 50檔 今日盤中日K即時是否為紅K的家數

是無法判斷的嗎?  能判斷當下的1分K是否為紅K嗎? 還是語法該怎麼寫 可以解決?

還有getsymbolfield("TSE50.SJ","TW50紅K家數") 這個函數的內容為何?

可以看的到嗎? 如果可以看的到或許可以找到問題

EX.第二張圖的部分小幫手這邊測試確實會發生相同情況,會請相關人員確認問題原因。

再繼續麻煩您了.

XQ小幫手 發文於   2022/11/03

 Hello Robert168,

 

及時判斷當下 台灣50的成分股 50檔 今日盤中日K即時是否為紅K的家數

=> 可以,您在腳本中使用 getsymbolfield("TSE50.SJ","TW50紅K家數", "D") 即可。

 

能判斷當下的1分K是否為紅K嗎

=> 可以,您在腳本中使用 getsymbolfield("TSE50.SJ","TW50紅K家數", "1") 即可。

 

getsymbolfield("TSE50.SJ","TW50紅K家數") 這個函數的內容為何

=> 這是和系統抓取系統計算出的數值,可參考函數說明

 

小幫手這邊測試在取1分鐘頻率和日頻率的 TW50紅K家數,指標和您寄來的腳本是相同的。(參考附圖)

 

須注意XS是有洗價腳本才會運算,所以若執行商品沒有洗價的話就無法抓到最新的值,因此可能造成偏差。

若要確保取得的值為K棒結束的值,會建議您抓取上一根Bar的值。

附加文件

  • 按讚來自於
  • r1171125
發表回覆
Close