資料讀取範圍

  •   401 
  • 最後發表   pure4321  2018 七月 31
pure4321 發文於   2018/07/29

如教學所示

指定10筆的話,就會提供最近10筆的K棒,然後從這10筆的第一根K棒(編號1)開始往右執行

 

請問以下程式

是否每根K棒都執行?因此closeD(0)代表該根K棒日線收盤價?

還是只執行一次?因此closeD(0)代表當日即時收盤價?

 

input: Periods(5); setinputname(1,"N天內第一根漲停");

settotalbar(Periods + 3);

for value1 = 1 to Periods

begin

if closeD(value1-1) > closeD(value1) * 1.065 then return;

 

end;

排序方式: 標準 | 最新
XQ小幫手 發文於   2018/07/30

Hi pure4321,

您好,請您先查看 CloseD 的函數程式碼,會發現 CloseD(0) 的時候表示 CloseD = Close,

故主頻率為日線時,CloseD(0)會代表該根K棒日線收盤價;

若主頻率非日線,CloseD(0)不代表該根K棒日線收盤價,而是代表每根K棒的收盤價,例如:主頻率為1分鐘線,則CloseD(0)代表每根1分鐘K棒的收盤價。

 

CloseD(0) 在盤中交易時段,加入指標或者加入策略雷達有勾選逐筆洗價時,代表當日即時收盤價,

 

以上說明,謝謝。

 

pure4321 發文於   2018/07/31

若主頻率為日線,以上面警示腳本為例,如下所列是否正確?

input: Periods(5); setinputname(1,"N天內第一根漲停");

settotalbar(Periods + 3);

for value1 = 1 to Periods

begin

if closeD(value1-1) > closeD(value1) * 1.065 then return;

 

第一根K棒(編號1)

value1 = 1,CloseD(0)=第一根K棒收盤價,closeD(1) =第一根K棒前1天收盤價,

value1 = 2,CloseD(1)=第一根K棒前1天收盤價,closeD(2) =第一根K棒前2天收盤價,

...

value1 = 8,CloseD(7)=第一根K棒前7天收盤價,closeD(8) =第一根K棒前8天收盤價,

 

第二根K棒(編號2)

value1 = 1,CloseD(0)=第二根K棒收盤價,closeD(1) =第二根K棒前1天收盤價,

value1 = 2,CloseD(1)=第二根K棒前1天收盤價,closeD(2) =第二根K棒前2天收盤價,

...

value1 = 8,CloseD(7)=第二根K棒前7天收盤價,closeD(8) =第二根K棒前8天收盤價,

 

...

第八根K棒(編號8)

value1 = 1,CloseD(0)=第八根K棒收盤價,closeD(1) =第八根K棒前1天收盤價,

value1 = 2,CloseD(1)=第八根K棒前1天收盤價,closeD(2) =第八根K棒前2天收盤價,

...

value1 = 8,CloseD(7)=第八根K棒前7天收盤價,closeD(8) =第八根K棒前8天收盤價,

 

XQ小幫手 發文於   2018/07/31

Hi pure4321,

您好,您的理解小幫手這邊看起來應該是正確的,

建議使用 Print 語法,將所需檢查的相關數值匯出,去做確認,

可以參考 如何運用Print指令來抓程式的臭蟲 此篇文章,

以上方向供參考,謝謝。

發表回覆
Close