В процессе загрузки ресурсов... загрузка...

Как указать различные версии данных для арендованной стратегии по метаданным ее кода аренды

Автор:Нинабадасс., Создано: 2022-03-23 08:54:31, Обновлено: 2022-04-14 09:10:37

Применение стратегии Метаданные о коде аренды

У друзей, которые работают на FMZ Quant Trading Platform, часто возникают такие потребности:

Когда вы разрабатываете стратегию аренды, вы хотите иметь различные ограничения средств на стратегию и различные ограничения платформы (ограничить платформы, которыми управляет стратегия), или вы хотите ограничить конфигурацию учетной записи платформы (уточнить, что стратегия может работать только на заранее согласованных счетах; когда пользователь стратегии использует другие счета, стратегия просит и больше не будет торговать и выполнять другие операции).

Эти, очевидно, не могут быть жестко кодированы, потому что если они будут жестко кодированы, все пользователи будут подчиняться этим ограничениям, и они не могут контролировать различные привилегии использования для разных групп пользователей.

Основываясь на вышеуказанных сценариях спроса, платформа FMZ Quant Trading расширила новую функцию:Настройки кода метаданных реестра аренды стратегии.

При создании кода реестра, вы можете указать метаданныеMetaПримечание: длина мета не может превышать 190 символов при генерировании кода реестра.

  • Использование метаданных кода FMZ для ограничения стратегий

    Например, я экспортирую разработку стратегии, и я разработал стратегию с спотовой торговой парой BTC_USDT. Стратегия делает только длинные позиции (изначально она имеет только котировку валютыQuoteCurrency, а именно USDT; после покупки он будет держать позицию сBaseCurrencyЕсли я хочу арендовать эту стратегию, название стратегии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

Нажмите на маленький значок wrench и установите метаданные регистрационного кода.

img

Затем, вы должны написать информацию об ограничении вМетауправление, например, несколько уровней использования стратегии, разработанной в этом примере:

  • уровень 1: без ограничения на сумму позиции;
  • уровень 2: ограничение максимальной суммы позиции до 10 монет;
  • уровень 3: ограничение максимальной суммы позиции до 1 монеты;
  • Не установлен Meta: при отсутствии установленного предельного значения для максимальной суммы позиции - 0,5 монеты.

img

Во-первых, мы установилиlevel1в Мета-контроль, и позвольте созданный код реестра иметьlevel1из испытания1. После создания регистрационного кода продавец стратегии отправляет регистрационный код покупателю стратегии.

Например, если я использую код реестра на другом своем счете (как на счете покупателя), я имею право использовать тест стратегии1.

img

  • Как покупатель стратегии использует стратегию

    Как покупатель стратегии, вам сначала нужно добавить бота, выбрать test1 в качестве стратегии и добавить объект спотового обмена WexApp (WexApp - это моделированный бот FMZ), а затем запустить бота.

img

Когда вы видите, как стратегия работает должным образом, это означаетlevel1не имеет ограничения на сумму позиции (сумма монет, находящейся на спотовом счете).

  • Изменить метаданные

    При использовании кода реестра стратегии, если разработчику стратегии необходимо скорректировать метаданные кода реестра, который должен быть отправлен, он может полностью изменить его.

    На странице Стратегия, это в записях о продаже.

    img

    Метаданные могут быть изменены.

    img

    Мы изменили метаданные старого регистрационного кода наlevel3, и пользователь стратегии должен перезапустить бота для тестирования.level3ограничить максимальную сумму позиции до одной монеты.

  • Заключение

    При аренде стратегии, в соответствии с различными группами пользователей и уровнями оплаты, вы можете специально настроить метаданные, чтобы контролировать стратегию по уровням.

    Разумеется, приведенные выше примеры являются лишь наиболее распространенными ограничениями и требованиями к контролю.


Больше