戦略レンタルコードメタデータの適用

作者: リン・ハーンニナバダス, 作成日: 2022-04-13 09:35:06, 更新日: 2022-04-13 17:13:27

戦略の適用 レンタルコード メタデータ

FMZ量子取引プラットフォームで開発する友人は,しばしばこのようなニーズを持っているかもしれません:

レンタル戦略を開発する際には,戦略上の資金の制限とプラットフォームの制限が異なる (戦略が運用するプラットフォームを制限する) またはプラットフォームアカウントの設定を制限したい (戦略は事前に合意されたアカウントのみで動作することが可能であることを指定する.戦略ユーザが他のアカウントを使用すると,戦略が提示され,もはや取引や他の操作を行わない).

硬式コードはできません. 硬式コードであれば,すべてのユーザーがこれらの制限の対象となり,異なるユーザーグループに対する異なる使用権限を制御することはできません.

上記の需要シナリオに基づいて FMZ Quant Trading プラットフォームは新しい機能を拡張しました戦略 レンタル 登録 コード メタデータ 設定.

メタデータを指定することができます.Metaメタの長さは,レジスタコードを生成するときに 190 文字を超えない.

  • 戦略を制限するために FMZ レジスタコードメタデータを使用する

    ストラテジーの出口です.私はBTC_USDTのスポット取引ペアで戦略を開発しました. 戦略は,ロングポジションのみを作成します (最初は,コート通貨のみを持っています.QuoteCurrencyUSDT となり,買収後,BaseCurrencyこの戦略の名前は"BTC"です.test1.

    戦略の制限は,戦略の特定の状況と組み合わせて,特に設計する必要があります.この例はスポット戦略の実証例ですが,戦略がフューチャー戦略である場合はどうでしょうか.次に,フューチャーポジション情報を制限する必要があります (GetPositionが返したポジションデータに従って).戦略がポジションが限界を超えると見ると,注文を投注し,ポジションを開くロジックはもはや実行されません (他のロジックは,ポジションを閉じるなど,通常実行する必要があります).

    したがって,これらの制限の設計は 戦略そのものと結合する必要があります. 例は実際の使用価値のない単純な指示に過ぎません.

    戦略 ソースコード:

    function main() {
        // The maximum asset value of the quote currency allowed by the strategy
        var maxBaseCurrency = null
        
        // Obtain the metadata when the register code is created 
        var level = GetMeta()
        
        // Detect the corresponding conditions of Meta
        if (level == "level1") {
            // -1 means no limit 
            maxBaseCurrency = -1       
        } else if (level == "level2") {
            maxBaseCurrency = 10     
        } else if (level == "level3") {
            maxBaseCurrency = 1
        } else {
            maxBaseCurrency = 0.5
        }
        
        while(1) {
            Sleep(1000)
            var ticker = exchange.GetTicker()
            
            // Detect the assets amount 
            var acc = exchange.GetAccount()
            if (maxBaseCurrency != -1 && maxBaseCurrency < acc.Stocks + acc.FrozenStocks) {
                // Stop executing the strategy trading logic
                LogStatus(_D(), "If the position exceeds the usage limits of  register code, the strategy trading logic will no longer be executed!")
                continue
            }
            
            // Other trading logic
            
            // Normally export the information of status bar 
            LogStatus(_D(), "The strategy is operating normally!ticker data:\n", ticker)
        }
    }
    

    登録コードを作成する際には,戦略テスト1 を"戦略"のページで検索し,右クリックします.行動ボタンをクリックします.賃貸.

img

クリック内部販売.

img

登録コードのメタデータを設定します.

img

制限情報を書き込む必要があります.メタこの例で設計された戦略のいくつかの使用レベルのような制御:

  • level1: ポジション額に制限がない.
  • level2: ポジションの最大額を10コインに制限する.
  • level3: 最大ポジション額を1コインに制限する.
  • 設定されていないMeta:設定されていない場合,最大ポジション金額のデフォルト制限は0.5コインです.

img

まず,私たちは設定しますlevel1作成したレジスタコードにlevel1試験1の レジスタコードが作成された後,戦略販売者は,レジスタコードを戦略購入者に送信します.

例えば,私自身の別の口座 (買い手口座) で登録コードを使用した場合,戦略テストを使用する権利があります.

img

  • 戦略 購入 者 が 戦略 を 使う 方法

    戦略購入者として,まずボットを追加し,戦略として test1 を選択し,WexApp スポット交換オブジェクト (WexApp は FMZ のシミュレーションボット) を追加し,その後ボットを実行する必要があります.

img

戦略が正しく実行されるのを 見ることができればlevel1ポジション額 (即日口座に保持されているコイン額) に制限はありません.

  • メタデータを変更する

    戦略レジスタコードを使用すると,戦略開発者が送信されるレジスタコードのメタデータを調整する必要がある場合,完全に変更できます.

    戦略ページでは 販売記録に載っています

    img

    メタデータは変更できます.

    img

    古い登録コードのメタデータをlevel3ロボットを再起動する必要があります. これは,ボットを起動します.level3ポジションの最大額をコイン1枚に制限する.

  • 結論

    異なるユーザーグループや支払いレベルに応じて 戦略をレンタルする際には メタデータを設定して レベルごとに戦略を制御できます

    もちろん,上記の例は,最も一般的な制限と制御要求のみです. 機能も実現できるさまざまな類似の要求があります.


もっと