2009年9月15日 星期二
HTS「戰略合成」的初步理解
HTS裡的「戰略合成」這個東西,本來我一直覺得是個黑盒子,隨便的把幾個做好的買賣訊號丟給它,就幫你生出一個新的買賣訊號出來,完全不曉得它是怎麼生的?
最近,我自己做了幾次實驗,我想我大約知道戰略合成是怎麼搞「合成」了。
假設你自己有兩個買賣訊號:A訊號、B訊號。過去日盛對外教學最多的應該就是一個交易策略去跟一個停損的合成。總之,其實戰略合成就是按照你要合成的買賣訊號的"依序"跑一遍。而其中所有的數值,包含在買賣訊號中所使用的變數或是MarketPosition、BarsSinceEntry等等這些的依序產生後果做最後的輸出,如此而已。
看看以下兩個相同的買賣訊號只是合成時置放的順序不同,就會得到不一樣的結果。
其實,我們可以把兩個買賣訊號的程式碼,除了宣告參數、變數的區域必須放在最開始處之外,只要把程式碼Copy放在統一個買賣訊號內其實就可以得到一樣的結果了。簡單說,當你使用戰略合成把A+B合成為一個策略的效果跟把A程式碼+B程式碼來得到一個新的C程式碼,會是一樣的效果。而也就是說戰略合成B訊號+A訊號,與複製B程式碼+A程式碼得到所新的D訊號的效果是一樣的。
就像這樣:
以及這樣:
戰略合成就像是在幹上面這兩張圖這樣的事情。也因為如此,我已經把我之前那個合成而來的程式真的"合成"在一個買賣訊號裡,而不需要用「戰略合成」了,畢竟這樣的方式還是我比較熟悉而容易控制的。
至於是不是所有被用來戰略合成的訊號經過順序調動,就會得到不一樣的結果?我的實驗結果是:不一定。反正不使用戰略合成,自己把程式碼Copy and Paste到一個新的買賣訊號裡,做前後調動就知道影響是什麼了,效果是一樣的。但是有一點是永遠重要的,你得知道這樣新組成的程式在做什麼,自己還是得對其中的邏輯有所掌握。
熱門文章
-
在 MultiCharts 或是 TradeStation 中都有 Set開頭的一些指令可以運用,比如 停損─SetStopLoss、停利─SetProfitTarget,這些都是所謂的 ThisBar 模式運作的特殊指令,它們讓你在條件成立的當根K棒就可以做出對應動作,而不是一...
-
在 MultiCharts 裡,本來我以為 EntryPrice(0) 就代表了最後一個進場的成本價,經過測試後,確定了 EntryPrice( 0 ) 不是最後一次進場價,而是最後進場方向的第一筆價格(可查閱"程式交易語法大全 page 255")。什麼意思...
-
去年開發「 把策略訊號轉換成選擇權去執行 」的時候,一直有個實務上的困擾:標的物價格。 我要把訊號轉成選擇權的時候,事前不能精準的知道要交易哪一個履約價、Put 或 Call,需要在訊號或市況變化的當下才決定交易標的。但在 MultiCharts 的運作架構上,需要開啟欲取...
-
殷鑑不遠。這是 2019/07/03 的台指期貨,在大約 10來秒的時間之中,台指閃崩了近 500點,並且快速回復。這樣類似的事件,在台指不是空前,也不會絕後,即使台灣期貨交易所有所謂的動態穩定機制在運作,這一天,據我所聽聞到也有不少友人在這很短的時間內... 中槍了。這裡,我們...