股票回測時,如何排除當天無法當沖的個股?

  •   506 
  • 最後發表   蕎伊斯  2020 十一月 09
蕎伊斯 發文於   2020/11/03

小幫手您好:

請問股票在過去歷史回測時,如何排除當天無法當沖的個股?

目前我的雷達的語法是使用
if GetSymbolInfo("買賣現沖")=false then raiseruntimeerror("無法買賣現沖,砍商品") ;

但是回測時好像不支援GetSymbolInfo語法,請問應該在語法中如何修改,可以在回測中比較真實還原:歷史中當日可當沖的進出狀況,謝謝您!

排序方式: 標準 | 最新
XQ小幫手 發文於   2020/11/04

蕎伊斯 您好

雷達的回測功能是可以用GetSymbolInfo 的

ex 

if GetSymbolInfo("買賣現沖") = true then 
ret=1;

小幫手是建議您,如果您要抓可當沖的股票

直接在if 條件式加入上面這段就好

也就是直接取可以當沖的股票 

蕎伊斯 發文於   2020/11/04

謝謝小幫手的解答,再請問這個功能,今天如果做之前的日期回測,例如10月26日的回測,他會抓到10/26當天可以當沖的個股,
還是抓今天11月4日可當沖的個股?

我是希望可以抓要回測日期(10/26)的當下可當沖個股,謝謝

XQ小幫手 發文於   2020/11/05

蕎伊斯 您好

如果您是用"回測" 功能

那他就會抓到當天10/26 的數據

不會受到今天如何所影響~!

蕎伊斯 發文於   2020/11/08

小幫手您好,請問如果寫
if GetSymbolInfo("買賣現沖") =false  then  return; //不是買賣現沖,就不跑

這樣寫也可以嗎? 會比較省資源嗎?

謝謝

XQ小幫手 發文於   2020/11/09

蕎伊斯 您好

您如果想這樣撰寫,當然是也ok  

但是在我看來其實概念是一樣的XD

 

 

原本如果寫GetSymbolInfo("買賣現沖") = true 的話

當這段不成立的話, 那程式就會終止了

其實如果您不在XS 裡寫到太多迴圈相關的語法的話

是不會浪費太多效能的!

發表回覆
Close