5 分K 取到上一檔的值

  •   151 
  • 最後發表   為了誰  2019 一月 25
為了誰 發文於   2019/01/23

 5 分 K  取收盤價 怎都都取到上一檔的

variable:KBarOfDay(0); KBarOfDay+=1; if date<>date[1] then  KBarOfDay=1; 

if CurrentTime >= 091000

value1 = bollingerband(Close[2], 20, 2);

value2 = bollingerband(Close[2], 20, -2);    

value3 = bollingerband(Close[1], 20, 2);

value4 = bollingerband(Close[1], 20, -2); 

value5 = bollingerband(Close, 20, 2);

value6 = bollingerband(Close, 20, -2); 

       print(file("d:\print\Ten.log"), currenttime, symbol,"0 BB", KBarOfDay, close[2], value1, value2);

print(file("d:\print\Ten.log"), currenttime, symbol,"5 BB", KBarOfDay, close[1], value3, value4);

print(file("d:\print\Ten.log"), currenttime, symbol,"10 BB", KBarOfDay, close, value5, value6);

log 如下   date = 1/23

91113.000000 4536.TW CurrentTime 2.000000 127.000000   =>  應該是0900 值是開盤昨天 13:25

91113.000000 4536.TW 0 BB 2.000000 128.000000 129.324808 126.075192  => 應該是5分0905 值是開盤0900

91113.000000 4536.TW 5 BB 2.000000 125.000000 129.523499 125.776501 => 0910 => 0905

91113.000000 4536.TW 10 BB 2.000000 127.000000 129.443560 125.956440 

請幫忙 感謝

排序方式: 標準 | 最新
XQ小幫手 發文於   2019/01/23

Hi 為了誰,

您好,查看您的程式碼

if CurrentTime >= 091000

看起來是要當電腦系統時間在九點十分以後,開始去紀錄相關數值。

若是的話,您可以將該行程式碼改為

if CurrentTime < 091000 then return;

應該會比較正確。

 

原因是原本 if 判斷式,只會將 value1 = bollingerband(Close[2], 20, 2); 納入判斷中,

造成後續的程式碼,不管時間是否有符合,都會執行,故會將所有時間的相關數值 Print,

以上方向供您參考,謝謝。


 

若更改後仍有問題,請您提供策略雷達匯出檔,

記得匯出的時候要勾選包含自訂腳本,

以利小幫手搭配您的雷達設定介面查看問題的原因,謝謝。

為了誰 發文於   2019/01/23

不對 , 可能是我沒把程式完整放上去, 我寫不同的程式來測試

if KBarOfDay = 1 then

begin

print(file("d:\print\Ten0.log"),currenttime,symbol,"bollingerband_t", KBarOfDay, Close, value1, value2);

print(file("d:\print\Ten0.log"),currenttime,symbol,"第一個5分K", Close, Kbar0, Kbar1, Kbar1_value);

end;

       log  

      90501.000000 3450.TW bollingerband_t 1.000000 64.500000 65.581358 64.788642  => 抓到9:00 的值

      90501.000000 3450.TW 第一個5分K 64.500000 0.000000 -1.000000 -1.000000  => 抓到9:00 的值

      9:05 close = 64.4.

      另外 用回測來測試 也是怪 9:00 KBarOfDay = 1 9:05 KBarOfDay = 2,  

 

 

 

XQ小幫手 發文於   2019/01/25

Hi 為了誰,

不對 , 可能是我沒把程式完整放上去, 我寫不同的程式來測試

您好,請您提供雷達匯出檔案,匯出時記得勾選包含自訂腳本,以利小幫手對照查看問題的原因,謝謝。


 

另外 用回測來測試 也是怪 9:00 KBarOfDay = 1 9:05 KBarOfDay = 2

請您提供

1. 完整程式碼或腳本檔案

2. 回測報告儲存檔案(*.BTReporter)

以利小幫手查看問題的原因,謝謝。

 

發表回覆
Close