加碼與減碼

GSnail 把開發策略的過程簡化成只要專注在設計進出場條件即可,同樣的對於含加減碼策略,設計者也只需要把焦點放在設計加減碼條件即可,要使用加減碼條件,記得把[進階設定]打勾,就會出現[加碼]和[減碼]兩個頁籤供設計者設定,這邊簡單列出不同類型條件組的差異

  使用時機 多空方向設定對條件組的影響 條件符合時的作用
進場條件 處於空手狀態時 多:建立多方部位
空:建立空方部位
無:事件提示模式
建立部位
加碼條件 處於持倉狀態時 同出場條件 增持部位
減碼條件 處於持倉狀態時,且含加碼部位 同出場條件 減持部位(後進先出)
出場條件 處於持倉狀態時 多:限定只在多方部位時使用
空:限定只在空方部位時使用
無:不管多空部位都可以使用
將全部部位平倉

接下來我們沿用2.1 新增一個策略 的例子(進場上限調整為1且勾選只算賠錢),加入加碼條件,這邊使用的加碼邏輯很簡單,在部位獲利狀態下且當根創當日新高,請參考下圖步驟設定

新增加碼條件

1.將每場加碼上限調整成1
2.點擊[多方條件]
3.在名稱輸入"獲利且創新高" (這邊輸入您容易理解的文字描述即可)
3.點擊[新增條件]
4.輸入獲利超過1000條件 [損益>1000]
5.重複步驟4點擊[新增條件]後輸入創當日新高條件[當根.收 > 前根.最高] 

完成後,為了比對加碼條件對策略的影響,先把獲利且創新高條件打勾取消後進行[編譯],之後先驗證近期績效60天( 2021-04-21到2021-07-16),然後在勾選回加碼條件後進行[編譯],同樣驗證近期績效60天,底下為執行結果

No 進場條件 出場條件 加碼條件 最大虧損 累計總損益
1 下跌50點創低後的紅K 停損50點;移動停利   -4,533 37,910
2 下跌50點創低後的紅K 停損50點;移動停利 獲利且創新高 -9,521 33,651

觀察第2組執行加碼的績效,累計總損益33,651 反而比原本沒加碼差,發生什麼問題?在這邊先回顧一下原先策略的出場方式有兩個,停損50點和移動停利(拉回20點),先看停損50點,換算成小台一點50元,停損50點就是2500元,編號1的最大虧損只有-4,533(因為策略採分K計算,分K結束後才會判斷出場所以會有一定機率出現較大的停損價差),第2組加碼策略最大虧損很明顯被放大成2倍-9,521,原因很簡單當加碼條件成立後會加買1口,部位會變成2口,當停損50點時,實際的停損損益一定會超過-5000(50*50*2);同樣的移動停利的條件,是拉回20點,原本從最大獲利拉回1000元會停利,在加碼狀態下會變成拉回2000元才停利。

看起來,原本的出場策略並未考慮部位問題,不適合用在加碼策略,接下來請參考下圖增加2個新的出場條件,並把原先兩個出場條件打勾取消

停損2500

獲利回吐1000

新增的2個出場條件把原先以點數(價格)為主的條件改成以金額為主的條件,這樣出場條件就不會受到部位的影響,將策略編譯後,同樣驗證近期績效60天,分別測試有無加碼條件的結果

No 進場條件 出場條件 加碼條件 最大虧損 累計總損益
1 下跌50點創低後的紅K 停損2500;獲利回吐1000   -4,533 35,760
2 下跌50點創低後的紅K 停損2500;獲利回吐1000 獲利且創新高 -4,533 50,096

觀察第2組執行加碼的績效,的確有發揮拿風險換獲利的效果(加碼部位會加大風險),獲利從35,760增加到了50,096,檢視歷史績效點擊單日獲利較高一天(2021-05-25)來檢視進場/加碼/出場點位

進場/出場/加碼點位

這邊要特別強調的是出場條件是否要與部位有關與是否有無[加碼條件]並無絕對關系,實際上仍要從策略整體角度去思考,例如當部位越多出場條件可能要越快(門檻變低),以免虧損快速擴大,另外要注意的是,加碼雖然能夠加速獲利,但同樣也加大風險,設計或執行此類策略務必小心謹慎

本文範例 策略教學3.gsc

下一篇 前置訊號(多重訊號設計)