比例下單的策略設定好之後,想要調整各項比例參數,要從哪裡開始進行呢 ?

比例下單的參數設定

比例下單的計算方式是依【由左到右】的順序計算,因此各項參數設定,請依照這個順序設定。

以下就依此順序說明並講解每一個欄位的設定方式。

若要將相同的設定值套用到所有策略,在設定框上按滑鼠右鍵【套用到全部】。

簡易模式

【簡易模式】(預設是勾選) 使用在下列情況:
1.全部策略訊號都是文字檔,並且放在同一資料夾。
2.每個策略訊號多空最高倉位都一樣是:1, 0, -1。(若不一樣【多空拐點】與【滿倉縮放】會算錯)
3.會將所有文字檔策略訊號的總倉位進行加總之後,再做最終比例倉位計算。(不能針對個別文字檔策略訊號設定倍數與比例)

【精細模式】(取消勾選) 使用在下列情況:
1.要對個別策略訊號,分別設定多空限制、倍數與比例。
2.個別策略的多空最高倉位會超過 1 口。
3.要合併的策略訊號中包含【萬用 API】的訊號。

不論是【簡易模式】或【精細模式】,凡是文字檔的策略訊號都要放在同一個資料夾,並且都是以【總倉位】的方式下單,訊號格式也必須都是【DateTime,Current,Price】的格式,例如【2020/05/23 13:00,-1,10950】。

啟用

啟用有兩個欄位:
【啟用】欄位:點選【啟用/不啟用】,控制比例下單策略的上下架。
【策略】欄位:顯示的是在【策略管理】頁面的啟用狀態,必須在策略管理的頁面,才能變更此狀態值,無法在此頁面變更狀態。

請注意:必須在兩個頁面都【同時啟用】,此比例下單策略才會有作用 !

未啟用的比例下單策略,不會進行計算,畫面上會以【灰色】的文字顯示。

滿倉部位與總倉位

依照【簡易模式】與【精細模式】的不同,這兩個欄位的計算方式也不一樣。

【簡易模式】:
【滿倉部位】= 資料夾內文字檔的數量,例如資料夾內有 6 個文字檔,則多空滿倉部位為【6/-6】。
【總倉位】= 將資料夾內所有文字檔訊號的倉位,進行加總計算。

【精細模式】:
【滿倉部位】= 將每個策略訊號依照其多空限制條件,帶入最高多空部位,分別計算該訊號的【比例訊號】值,再進行加總計算。
【總倉位】= 將所有訊號個別的【比例訊號】值進行加總計算。

如果多空限制條件中 (包含精細模式中,任何一個個別的訊號設定),有設定【不限制】的話,就無法計算【滿倉部位】。(連帶的【多空拐點】與【滿倉縮放】也會無法計算,無法計算是代表無法使用這兩項功能,並不影響其它比例計算與下單功能)

多空拐點:偏移多空部位的基準點

未設定是 0%,代表多空相等不偏移。

多空拐點【 > 0】多單會偏移縮小,空單則會偏移放大。
多空拐點【 < 0】空單會偏移縮小,多單則會偏移放大。

例如:多單限制 10 口、空單限制 10 口、多空拐點【30%】:
總倉位【5】口:計算值 = 10 * (5/10 – 30%) =【2】口
總倉位【0】口:計算值 = 10 * (0/10 – 30%) =【-3】口
總倉位【-5】口:計算值 = 10 * (-5/10 – 30%) =【-8】口

例如:多單限制 10 口、空單限制 5 口、多空拐點【-30%】:
最高滿倉部位取多空限制的最大值:10 口
總倉位【5】口:計算值 = 10 * (5/10 – (-30%)) =【8】口
總倉位【0】口:計算值 = 10 * (0/10 – (-30%)) =【3】口
總倉位【-5】口:計算值 = 10 * (-5/10 – (-30%)) =【-2】口

請注意:主策略與所有訊號的【多單限制】與【空單限制】均需設定 > 0,【多空拐點】的設定才會有作用 !

當多空拐點 > 0 (向空方偏移) 時,總倉位 = 0 可能會下空單;反之多空拐點 < 0 (向多方偏移) 時,總倉位 = 0 可能會下多單。

即時比例

【總倉位】經過【多空拐點】的計算之後的倉位,佔【滿倉部位】的比例值:

即時比例 = 滿倉部位 * ( (總倉位 / 滿倉部位) – 多空拐點) / 滿倉部位

多單限制與空單限制

【多單限制】:-1 不限制, 0 不作多。

【空單限制】:+1 不限制, 0 不作空。

滿倉縮放:將訊號總倉位依資金大小縮放至可接受的下單口數

以【多單】為例:
例如所有訊號多單滿倉時的最高滿倉位是 20 口,目前所有訊號計算出來的總倉位是 15 口,並且設定口數限制是 8 口,則【比例倉位】如下:
【未設定】2.每個策略多空最高倉位都一樣是:1, 0, -1:比例倉位為 8 口 (9 ~ 15 口不會下單)
設定【滿倉縮放】 :比例倉位為 6 口 (15/20 * 8 = 6 口),換句話說,若訊號全部滿倉 20 口,則比例倉位才會來到 8 口。
請注意:在【精細模式】中所有訊號的多單限制口數都要設為 >= 0,【滿倉縮放】的設定才會有作用 !

以【空單】為例:
例如所有訊號空單滿倉時的最高滿倉位是 -20 口,目前所有訊號計算出來的總倉位是 -15 口,並且設定口數限制是 -8 口,則【比例倉位】如下:
【未設定】滿倉縮放:比例倉位為 -8 口 (-9 ~ -20 口不會下單)
設定【滿倉縮放】 :比例倉位為 -6 口 (-15/20 * 8 = -6 口),換句話說,若訊號全部滿倉 -20 口,則比例倉位才會來到 -8 口。
請注意:在【精細模式】中所有訊號的空單限制口數都要設為 >= 0,【滿倉縮放】的設定才會有作用 !

請注意:必須【滿倉部位】與【多空限制口數】都有值,【 滿倉縮放】的設定才會有作用。

倍數

倍數可設定至小數兩位數,且能設定【負值】。

請注意:設定【負值】代表與訊號對作,進行反向操作,如果不清楚自己真正的意圖,請勿使用【負值】的倍數。

捨入方式

提供四種捨入方式:

【四捨五入】
2.3 –> 2、2.5 –> 3、2.6 –> 3
-2.3 –> -2、-2.5 –> -3、-2.6 –> -3

【四捨六入】五成雙:遇 5 會捨入至最接近的【偶數】
2.3 –> 2、1.5 –> 2、2.5 –> 2、2.6 –> 3
-2.3 –> -2、-1.5 –> -2、-2.5 –> -2、-2.6 –> -3

【無條件捨去】
2.3 –> 2、2.8 –> 2
-2.3 –> -2、-2.8 –> 2

【無條件進位】
2.3 –> 3、2.8 –> 3
-2.3 –> -3、-2.8 –> -3

維基百科:奇進偶捨 (四捨六入五成雙)
奇進偶捨,是一種計數保留法,是一種數值簡化規則。從統計學的角度,「奇進偶捨」比「四捨五入」更為精確:在大量運算時,因為捨入後的結果有的變大,有的變小,更使捨入後的結果誤差均值趨於零。而不是像四捨五入那樣逢五就進位,導致結果偏向大數,使得誤差產生積累進而產生系統誤差。「奇進偶捨」使測量結果受到捨入誤差的影響降到最低。

比例倉位 (最終總倉位)

【總倉位】經過【多空拐點】、【多空限制】與【倍數】的計算後,會得到【計算值】。

將【計算值】經過【捨入方式】捨入成整數,就是這個比例策略最終要下單的【比例倉位】(最終總倉位)。

在下單期間,只要【比例倉位】(最終總倉位) 發生變動,就會發動下單。

最新價格

顯示該比例策略的所有訊號【最近一次】訊號倉位變動的價格,此價格會和【比例倉位】(最終總倉位) 一起傳送至下單訊號中。

訊號偵測時間

不論比例策略裡的訊號數量多少,只會開一個執行緒偵測。

例如設定 0.05 秒,共 25 個策略訊號,每隔 0.05 秒會將 25 策略全部重取最新倉位並計算最終的比例倉位 (最終總倉位)。

實測 250 個策略文字檔放在虛擬硬碟中,全部重取最新倉位並計算完最終的比例倉位的時間約在 15 毫秒之內,也就是每一毫秒(千分之一秒)可以處理 16~18 個策略。

等待時間

使用在比例策略中的多個策略訊號可能會同時觸發時,當第一次比例倉位 (最終總倉位) 發生變動之後,等待其它訊號倉位變動的時間,等待完畢再重新計算一次,以確認在這段時間之中比例倉位 (最終總倉位) 是否又有變動 ?

例如 +1 -1 兩個策略同時觸發,若等待時間太短,則會 +1 -1 分別下單兩次,若設定適當的等待時間,則 +1 -1 互抵就不會下單,可有效減少下單次數,避免不必要的進出。

下單間隔時間

比例倉位計算完畢,最終總倉位有變動而發動下單之後,間隔一段時間,再開始計算新的比例倉位 (最終總倉位)。

這是避免大量策略在某一價格發生多空策略交戰導致總倉位上上下下的不斷變動,又正好在捨入法的邊界值附近,使得比例倉位 (最終總倉位) 在短時間不斷變動,造成不斷重覆下單又平倉的情況。

摘要

比例下單的各項參數設定,請依照【由左到右】的順序設定,若要將相同的設定值套用到所有策略,在設定框上按滑鼠右鍵【套用到全部】。

相關教學