COCO研究院

 找回密碼
 註冊
搜索
查看: 26038|回復: 28

請問MC的setstoploss有啥米洞嗎?

[複製鏈接]
發表於 11-11-22 19:35 | 顯示全部樓層 |閱讀模式
10金錢
本帖最後由 poya 於 11-11-22 09:28 PM 編輯

請問MC的setstoploss有啥米洞嗎? 還是執行或策略撰寫上有啥要注意的?
發覺有時可在當根k停損進出,有時又不會,發覺的狀況都是buy時stoploss沒執行到,變nextbar market stop sell好像都執行的到,真奇怪。
已經卡關卡一週了,懇請版上高手指點一下。感恩!
test.jpg
上圖是11/17的信號,停損是設4600,但就是會有爆錶的狀況…
        setstopposition;
        setstoploss(4600);

最佳答案

查看完整內容

這個情況有點微妙。 我試著解釋一下,一般來說,我們在寫策略程式碼的時候,已經習慣了動作點在條件成立的下一根, 請注意是下一根!而當 IOG=True 的時候,在MC裡面的下一根會變成是以Tick為單位,即使你在 圖面上看到的是...K棒,這裡出現了K棒的換根與以Tick來換根的差異。 而Set開頭的指令就是用來讓我們在整體程式碼的換根動作以圖面的K棒為結構,但是這些停損或是 停利的Set開頭指令用的卻是以Tick為換根... 因此,不要在 ...
發表於 11-11-22 19:35 | 顯示全部樓層
這個情況有點微妙。
我試著解釋一下,一般來說,我們在寫策略程式碼的時候,已經習慣了動作點在條件成立的下一根,
請注意是下一根!而當 IOG=True 的時候,在MC裡面的下一根會變成是以Tick為單位,即使你在
圖面上看到的是...K棒,這裡出現了K棒的換根與以Tick來換根的差異。

而Set開頭的指令就是用來讓我們在整體程式碼的換根動作以圖面的K棒為結構,但是這些停損或是
停利的Set開頭指令用的卻是以Tick為換根...

因此,不要在你原本的策略程式中把 IOG=True,要不然圖面上產生的動作就不是你本來想像的了
直接使用Set開頭指令讓它位你做到進場當根可以停損。而回測就是要開細部回測以保持盤中訊號與
盤後(回測)都一致。
回復

使用道具 舉報

發表於 11-11-22 23:38 | 顯示全部樓層
開啟IOG模式,測試看看。應該會正常。
回復

使用道具 舉報

 樓主| 發表於 11-11-23 00:45 | 顯示全部樓層
回復 3# sunsamy

感謝大大回覆,不過我都已經是用盤後資料重新再測過也是如此說。
回復

使用道具 舉報

 樓主| 發表於 11-11-23 01:07 | 顯示全部樓層
本帖最後由 poya 於 11-11-23 01:12 AM 編輯

回復 2# maison6579


    感謝大大回覆,真的太神了,打開IOG後真有種how do you turn this on的fu   
    不過問題又來了…
遊客,如果您要查看本帖隱藏內容請回復
回復

使用道具 舉報

 樓主| 發表於 11-11-23 01:45 | 顯示全部樓層
回復 2# maison6579


   
遊客,如果您要查看本帖隱藏內容請回復
回復

使用道具 舉報

發表於 11-11-23 08:47 | 顯示全部樓層
Set 開頭的指令就是IOG模式的作用了。
只要有IOG,就一定要開啟"細部回測",不是只有在開發策略時的回測要開而已喔
盤中執行也要開著,因為一開始的圖表啟動就必須要。

看你的記錄大概是5分線吧,最好開到 Tick 的細部回測。
回復

使用道具 舉報

發表於 11-11-23 08:54 | 顯示全部樓層
回復 5# poya
看了有點疑問, 回復了解一下.
回復

使用道具 舉報

發表於 11-11-23 08:58 | 顯示全部樓層
Set 開頭的指令就是IOG模式的作用了。
只要有IOG,就一定要開啟"細部回測",不是只有在開發策略時的回測要 ...
曾永政 發表於 11-11-23 08:47 AM

阿政大說的是,我查使用手冊 SetStopLoss function is evaluated intra-bar and not only on close of a bar, and can exit within the same bar as the entry.
這樣還需要在程式內再去開IOG嗎?
回復

使用道具 舉報

發表於 11-11-23 09:30 | 顯示全部樓層
不需要,Set開頭的指令本身就是以IOG的模式在運作了。
回復

使用道具 舉報

 樓主| 發表於 11-11-24 10:42 | 顯示全部樓層
本帖最後由 poya 於 11-11-24 10:52 AM 編輯

回復 7# 曾永政

感謝政大回覆。

遊客,如果您要查看本帖隱藏內容請回復

不曉得政大有遇過這樣的問題嗎?還是我程式控制的地方哪裡寫的不對呢?感謝!
回復

使用道具 舉報

發表於 11-12-2 09:20 | 顯示全部樓層
You may use below statements, instead of setstoploss.
If MarketPosition = 1 then sell next bar at (EntryPrice - XXXX) Stop;
If MarketPosition = -1 then buytocover next bar at (EntryPrice + XXXX) Stop;
XXX is the amount ($) of stop loss.
回復

使用道具 舉報

 樓主| 發表於 11-12-3 22:07 | 顯示全部樓層
回復 2# 曾永政


    感謝政大的回覆,原來MC是這樣的執行步驟,不過其實我用SET指令,開了細部回測,在沒跳空的情況下,
還是會有超出停損的狀況,若是實單滑價是可理解,但我是在回測要確認策略績效,照理講沒有跳空應該不會有這種問題。
這還是我目前一個不解之謎。不知道是不是資料面的問題。
回復

使用道具 舉報

 樓主| 發表於 11-12-3 22:09 | 顯示全部樓層
回復 13# csk828


    感謝大大回覆,我想政大也寫的很清楚,若不是用SET指令,用您這個方式,那就得開IOG了,但那樣程式會變很複雜,
不過其實是我根本不會寫IOG,所以這樣改寫,不開IOG是沒辦法有觸價停損的回測效果。謝謝!
回復

使用道具 舉報

發表於 11-12-5 13:43 | 顯示全部樓層
你可能嘗試先打開QM看那段時間價格是否有連續!(tick資料)..
如還是有落差就要更詳細找問題了..XD
回復

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 註冊

本版積分規則

手機版|Archiver|站長信箱|廣告洽詢|COCO研究院

GMT+8, 24-12-22 15:12

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回復 返回頂部 返回列表
理財討論網站 |