請教語法: D <> D next bar
這篇MC官網文章http://www.multicharts.com.tw/dis/dis_Content.aspx?rd=1&D_ID=2&SN=14112 有這麼一行程式碼,語法很少見過(可能是我少見多怪也說不定)if D <> D next bar and open nextbar> Close and dayofweek(D) = 5 then buy next bar at market; 這問:1. D <> D next bar 是什麼意義?2. open next bar > Close是什麼意義?謝謝! 我來猜猜
1. D <> D next bar : 今天的日期不等於下一根bar的日期
2. open next bar > Close : 下一根bar的開大於現在bar的收
3. dayofweek(D) = 5 : 今天星期五
==>下一根bar的開是星期一開盤,
所以下星期一開盤大於本周五收盤的話, 下星期一開盤的第一根就市價買進
有錯請鞭小小力
xoxo 發表於 13-4-10 20:55 static/image/common/back.gif
我來猜猜
1. DD next bar : 今天的日期不等於下一根bar的日期
2. open next bar > Close : 下一根bar的開 ...
我也這麼"推理"過,
但可能有 "引用未來數據" 的問題.
本帖最後由 曾永政 於 13-4-10 22:27 編輯
的確就 Condition 的判斷來說是引用了未來數據,但是卻不會在 condition 的成立與否有變化的問題。這對於用來下單是一點問題也沒有的。
我曾經介紹過:http://www.yctseng.net/2012/02/open-tomorrow-stop.html
next bar(tomorrow) 資料取用是有限制的,只有下一根K棒的 Open、Date、Time、Time_s 可以取用,而這些資料都是在下一根K棒的第一個 tick 出現時,就立即確定且不會變化的數據,而 condition 判斷後的動作最快也不過就是 next bar market,所以就實際上的下單來說,因為 Open next bar 出現時,condition 就可以確立,動作與否也就可以確立 do or not,因此這個狀況下的引用未來數據是沒有問題的。
長見識了. Learned something.Thanks.{:4_209:} 小弟就我所知說一下, 說錯不要打我.
D 的意思是前兩根K棒的日期
D 的意思是前一根K棒的日期
D 或 D this bar 或 D today 或 D 的意思是當根K棒的日期
D[-1] 或 D next bar 或 D tomorrow 的意思是下一根K棒的日期
O 的意思是前兩根K棒的開盤價
O 的意思是前一根K棒的開盤價
O 或 O this bar 或 O today 或 O 的意思是當根K棒的開盤價
O[-1] 或 O next bar 或 O tomorrow 的意思是下一根K棒的開盤價
用[]可能比較好理解 本帖最後由 googleandy 於 13-4-11 00:59 編輯
K7774 發表於 13-4-11 00:16 static/image/common/back.gif
小弟就我所知說一下, 說錯不要打我.
D 的意思是前兩根K棒的日期
好的, 謝謝 K 大,
其實我也嘗試把上述程式碼改為
if D <> D[-1]andopen[-1]> Close and dayofweek(D) = 5 then
buy next bar at market;
但得錯誤訊息:
"試圖使用未來數據, k棒引用值-1"
googleandy 發表於 13-4-11 00:55 static/image/common/back.gif
好的, 謝謝 K 大,
其實我也嘗試把上述程式碼改為
D[-1]在PL可以編譯得過, 但在MC卻不能引用...我覺得這應該算是MC的bug,
anyway, 改用D next bar, D tomorrow應該是ok的.
OHLC用[-1]好像就都沒有問題, 但還是要注意假聖杯的問題.
if D <> D next bar and Open[-1] < Close[-1] then buy next bar market;
setexitonclose;
頁:
[1]