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個新的出場條件,並把原先兩個出場條件打勾取消
新增的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
下一篇 前置訊號(多重訊號設計)