因為我上次有發文了一次,但是我後來想查看我發的文,結果連不進去,所以我再次發文一次,這次我多了幾個疑問,希望各位高手知道的可以幫忙解答一下,謝謝。
1.關於使用set系列函數的疑問:
我就用我比較常用的SetPercentTrailing;這個很神奇,只要加了這個很多策略績效就可能會變很好,我直接說我怎使用的,希望大家也可以試試看,也可能是我剛好不小心寫出很好的策略,所以績效才會很好。
我的使用方式:
這是我使用我大多策略的共通點,只要1.圖表週期調成90分鐘K以上的週期;2.開啟細部回測,然後打勾逐筆1ticks;3.使用SetPercentTrailing來停利與SetStopLoss停損,停利方式:SetPercentTrailing(90 * BigPointValue,1); 停損方式:SetStopLoss(50 * BigPointValue);
補充說明:我滑價設定1200,手續費0;停利部分90那裡數字越小獲利越好,然後回檔一定要1%,如果回檔改0%績效不知為甚麼會變很爛,1%與0%應該沒差多少啊,績效卻差很多;細部回測一定要勾逐筆1ticks,其實勾1秒也可以;圖表週期分K調越大績效越好。因為我只有1年的歷史資料回測,所以也可能是剛好這策略績效比較好。
2.細部回測的週期疑問:
我發現開啟細部回測勾選盤中秒,然後改60秒的週期與直接勾選盤中1分鐘的週期,回測出的績效會不同,而且是差很多,照理來說60秒與1分鐘應該是一樣的阿。
3.使用of data2語法疑問:
如果在程式碼裡面的隨便一個地方寫這句 o of data2; 然後在同一個工作底稿新增第二的圖表,再把第二個圖表的週期設定800分鐘,之後回測績效會和沒加o of data2; 之前的績效不同;我不知道大家有沒有這問題,希望大家能試試看,因為這算是很嚴重的問題;照理來說程式碼沒使用到的地方,應該不受影響。另外不只是o of data2; 只要是of data2; 的前面是使用 開、收、最高、最低,都會受影響,還有好像只要主要執行的圖表的K棒週期小於第二圖表的週期就會受影響。
以上是我的疑問,不知道大家有沒有遇到這些問題,也因為這些問題讓我覺得使用這軟體的回測真的是可以當作參考嗎,還是只能真實下單來試策略,再次謝謝大家看完我的疑問。
問題1: 請確認 tick 資料是否完整。 請互相對照比較2邊的交易明細, 並計算看看是否符合妳的認知。 問題2: 請開 60秒 和 1分鐘 的 圖表來比較是否完全一樣, 可把 60秒 和 1分鐘 的 開高低收 等資料 print 出來比較。 問題3: 請查詢 "即時與歷史數列資料吻合" 。
請把 滑價1200 和 手續費0 改成 滑價0 和 手續費1200 看看績效會如何。
1. 試用版 tick 資料不完整, 所以妳的細部回測不準確。 2. 請找出一段K線圖, 搭配使用 stop 和 limit 寫出簡單的進出場策略, 依其交易明細來驗證滑價和手續費是否設定正確。 3. 請從回檔 1% 和 0% 的交易明細裡, 找出進場點位相同但出場點位不同的交易, 根據實際K線圖計算看看是否符合妳的認知。 4. 請把 "即時與歷史數列資料吻合" 取消後跑看看有什麼不同..
手續費與滑價不管用甚麼來停利與停損都是正確,剩下的可能要麻煩大家試看看有沒有這些問題,因為我這邊資料好像是不太正確。
其實我主要是看大家有沒有遇到跟我差不多的問題,如果有表示是multicharts這軟體的問題,如果大家都沒問題,表示很大的可能是我這邊的問題,而如果是我這邊的問題,我不管怎試都還是會一樣,而且我這邊資料有限,所以無法確認太多東西是否正確(除非我直接實際的去下單),還有我會使用set系列函數來做為停利與停損是想要預防行情的大起大落,但是set系列函數看似沒問題,其實只要認真仔細的研究就會發現很多問題,我說的或許只是其中一個問題。
有無細部資料會影響到回測的運算方式, 如果了解的話, 上面提到的 第3點 就可以幫助理解 回檔 1% 和 0% 的差異的原因。 若了解 "即時與歷史數列資料吻合" 的 使用 和 取消 會如何影響策略運算的話, 問題3 就不是問題了。