FMEXの順序解読 最適値の量最適化

作者: リン・ハーン小草, 作成日: 2020-07-03 09:30:03, 更新日: 2023-09-28 21:11:27

img

FMEXの倒産は多くの人を困らせましたが,最近,再開の計画を出し,元の鉱山と似たルールで債務解消を図っています.https://www.fmz.com/bbs-topic/5834排序採掘には最適化のための余地もある.人は同じ穴を2度踏み出すべきではないが,FMEXに債権がある人は,FMZ量化プラットフォームで動作する具体的な実盤戦略を参考にしてもよい.

FMEXの順序解読ルール

日中の5分ごとに順序解読周期として定義され,各周期に取引が当日の順序解読額の1/288を割り当てられる.各サイクルの中で,ランダムに1つの時間点を選択し,その取引の売買盤の順位状況のスナップショットをします.

  • 購入1 ユーザーによる請求額比率で,その順序の解凍周期で返済額の1/4を割り振る
  • 売る1 ユーザーによる予約金額の比率で,その順序の解読周期で返金される額の1/4を配分する
  • 購入2から購入5の4つの列の挂機,各列のユーザー内の挂機金額の割合によって,その順序の解凍周期返還額の1/40を別々に分配する
  • 販売2から販売5の4つの列の挂機,各列のユーザー内の挂機金額の割合によって,その順序を解除周期の返金額の1/40を別々に分配
  • 購入6から購入10までの5つの列の挂機,各列のユーザー内の挂機金額の割合によって,その順序の解凍周期の返金額の1/50を別々に分配する
  • 販売6から販売10の5つの列の挂機,各列のユーザー内の挂機金額の割合によって,その順序を解除周期の返還額の1/50を別々に分配する
  • 11から15までの5つの列の挂記を購入し,各列のユーザー内の挂記金額の割合によって,その順序の解読周期の返金額の1/100を別々に分配する.
  • 販売11から販売15の5つの列の挂機,各列のユーザー内の挂機金額の割合によって,その順序を解除サイクル返金額の1/100を別々に分配

当日,あるユーザが取引対の順序解読で得た総返金は,その取引でそのユーザが毎週順序解読で得た額の総返金である.

排列は利益を解除する

解読の総利益は以下のとおりです.

img

i は,いずれかの位置を表示し,両側に合計30の位置があり,a は注文量,R は返金額をロックし,V は既に注文されている総量である.

取引解鎖とは異なり,挂单にはコストがありません.ここでRは相対的な大きさのみを考慮し,USDTの価格設定の絶対額を考慮せずに実行できます. もし,総挂单を決定した場合,問題は,注文をさまざまな位置に分配して収益Gを最大化する方法になります. 簡単な最小の挂单の位置を見つけ,すべて挂が,明らかに最適ではありません. 例として,既存の3つの位置の挂单が10である場合,それらのRは同じです.

排列解鎖の最適化

究極の最適化目標と制約条件は以下の通りです.

img

M は合計掛ける単数である. これは不等式を含む二次凸最適化問題であり,KTT の条件を満たし,整数として解く. 対応するパッケージと凸最適化解答器を使用して,直接結果を導き,各位置に最適な掛ける単数を返すべきである. しかし,これは明らかに我々が求める答えではない. 我々は問題を簡素化し,具体的な解答ステップを得なければならない.

簡単な例から始めましょう

2つの列を考慮するだけで,現在の挂牌数はそれぞれ10,20 (それぞれ1列,2列と呼ばれます),それらの解鎖額はRであり,戦略準備挂牌額は合計30です. 解鎖額を最大化するために資金をどのように分配するか? この問題は簡単に見えるが,計算なしで正しい結論に達することは難しい. 読者はまずその答えを考えてみてください.

解決策1:

最小の掛ける位置を見つけ,全部掛ける,合計利益 G=30/ ((30+10) =0.75R. これは考えやすい方法です.

解決策2:

各項に1元を配分し,最大利益をもたらす位置,すなわち,掛ける単位の最小位置に配分する.第1元は第1列に配分され,第1列の掛ける単位の量は10+1になり,第2元も第1列に配分される.このようにして,累計に第1列に10元が配分されるまで,ランダムに1つを選択し,第1列の合計は20以上になると,次に第2列に配分する.最終結果は,第1列に20元が配分され,第2列に10元が配分され,それらの最終的な掛けるリストは30である.総収 G=20/30+10/30=Rである.この方案は,方案1よりもはるかに計算し,容易である.

オプション3

最初の列を配分a,第二列を30-aに設定すると,方程式求定を0 (プロセスが列挙されていない,取引解読の文章に似ている) に直接列挙し,最終結果を計算すると,式は:img

整数を取るとa=15になる.総利益G=15/25+15/35=1.0286Rは,方法2より優れている.公式から直接得られるので,これは最も最適な方法であり,読者は検証することができる.

結果は予想とは異なるかもしれない.Solution 2は,各ユニットの配分が,現在の状況において最適で,全体的に最適でない理由を明示している.このケースはよくある.局所的な優位性は全体的に最適ではない.配分の前に,入札量には既に投入された資金があり,全体的な効率は沈没コストを考慮する必要があります.

具体的最適化方案

最終的に実際の実行可能な操作を開始するか,または分配ごとに1元で問題を簡素化するか.まず,効率を測定し,導関数を使用して,Gに対するすべてのaの貢献を反映することができます.この貢献は,単一の分配ではなく累積コストを考慮します.この値は,全体として最終利益への貢献が大きいことを示します.明らかに,関数のイメージに基づいて,a=1,有からゼロ,効率が最も高く,その後徐々に低下します.

img

同じ簡単な例で,それぞれが資金を配分した後の効率を計算し,表をリストします.

資金提供 1 2
1 0.0826 0.0454
2 0.069 0.0413
3 0.0592 0.0378
4 0.051 0.0347
5 0.0444 0.032

|12 | 0.0207 |0.0195| |13 | 0.0189 |0.0184| |14 | 0.0174 |0.0173| |15 | 0.016 |0.0163| |16 | 0.0148 |0.0154| |17 | 0.0137 |0.0146| |18 | 0.0128 |0.0139|

表の1元が1階に割り当てられ,2元が1階に割り当てられ...5元が2階に割り当てられ...このようにして,最後に1階に15元,2階に15元が割り当てられ,この方程式で計算した最適値になります.具体的には30階の場合と同じアルゴリズムで,具体的なステップは:

  • 1.まずすべての職位をチェックし,V=0なら,a=1なら,余分な資金は配分されない.
  • 2.将总资金分配为N份,每次选择一个挡位分配。
  • 3. 各職位の効率を計算する=RV/pow ((a+V,2),aは,その職位に累計割り当てられた資金+この次分配された資金を表します.
  • 4.将资金分配给效率最高的挡位,效率相同随机选一个。
  • 5. 資金配分が完了するまでのサイクル3-4

もし,私たちの総掛けた注文量が大きい場合,各元を1回分配する効率が低すぎる場合,資金を100個に分割し,一度に1個分ける事が可能で,単なる単純な演算順序であるため,アルゴリズムの効率性は高い.具体的には実行レベルまで,最適化のための余地もあります.例えば,私たちの注文を100個に分割して,調整するたびに,注文をすべて取り除くのではなく,ただ再分配する必要があります.また,自動設定のR値を設定し,より重量のある遠隔盤に与え,順序解鎖と掛けた注文解鎖に重合の部分があり,統一的に考慮することができます.

この記事はFMZの量化プラットフォームの原稿で,出所が記載されています.https://www.fmz.com/bbs-topic-new/5843


関連性

もっと