O recurso está a ser carregado... Carregamento...

Como especificar diferentes versões de dados para a política de aluguel com metadados de código de táxi

Autora:Inventor quantificado - sonho pequeno, Criado: 2021-05-20 09:53:15, Atualizado: 2023-09-24 19:37:08

img

Aplicação de metadados de código de táxis estratégicos

Os parceiros que desenvolvem em plataformas de negociação quantitativa de inventores podem frequentemente ter necessidades como:

Desenvolver uma política de aluguel que deseje ter um limite de fundos diferente para a política, um limite de exchanges diferente para a política de aluguel ("exchanges que operam a política de restrição"), ou um limite de configuração de contas de exchanges para a política de aluguel ("especificar essa política para operar apenas contas previamente acordadas, sugerir a política e deixar de negociar quando o usuário da política usa outras contas").

Obviamente, estes não podem ser escritos no código, porque se forem escritos no código. Todos os usuários serão limitados por essas condições e não será possível controlar diferentes permissões para diferentes grupos de usuários.

Com base nos cenários de demanda acima, a plataforma de negociação quantitativa do inventor expandiu novas funcionalidades:Configuração de metadados de código de registro de táxis

Pode-se especificar um metadado ao criar um código de registoMeta, os dados são strings. Nota: Meta não pode exceder 190 caracteres de comprimento ao gerar o código de registro.

  • Limitar a política de par com os metadados do código de registro FMZ

    Por exemplo, eu sou um estrategista de desenvolvimento de barracas, eu desenvolvi uma estratégia para o BTC_USDT em pares de negociação em tempo real, a estratégia é apenas fazer mais (ou seja, inicialmente apenas cotações).QuoteCurrencyO USDT é uma moeda de troca que pode ser comprada e mantida.BaseCurrencyEu vou alugar essa estratégia, que é chamada de "BTC".test1

    Como pode ser visto, o design limitado da estratégia requer um design específico em combinação com a situação da estratégia específica. Este exemplo é uma demonstração da estratégia de mercado, se a estratégia é uma estratégia de futuros?

    Portanto, esses projetos precisam ser combinados com as próprias estratégias específicas, e este exemplo é apenas um simples exemplo ilustrativo e pode não ter valor de uso prático.

    O código da estratégia:

    function main() {
        // 策略允许的计价币最大资产数值
        var maxBaseCurrency = null
        
        // 获取创建注册码时的元数据
        var level = GetMeta()
        
        // 检测Meta对应的条件
        if (level == "level1") {
            // -1为不限制
            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()
            
            // 检测资产数值
            var acc = exchange.GetAccount()
            if (maxBaseCurrency != -1 && maxBaseCurrency < acc.Stocks + acc.FrozenStocks) {
                // 停止执行策略交易逻辑
                LogStatus(_D(), "持仓超过注册码的使用限定,不再执行策略交易逻辑!")
                continue
            }
            
            // 其它交易逻辑
            
            // 正常输出状态栏信息
            LogStatus(_D(), "策略正常运行!ticker数据:\n", ticker)
        }
    }
    

    Ao criar o código de registro, você encontra a política test1 na biblioteca de políticas, clique na política test1 no lado direito.OperaçõesClique aqui.Venda e venda

    img

    Clique aquiVenda interna

    img

    Clique no botão de controle para configurar os dados do código de registro.

    img

    E depois escreve a informação que você quer limitar.MetaOs controles, por exemplo, são usados para a classificação de várias estratégias projetadas neste caso:

    • Nível 1: Não há limite de quantidade de estoque.
    • Nível 2: limite de 10 moedas.
    • Nível 3: limite de armazenamento de até 1 moeda.
    • Meta não definido: quando não definido, o limite padrão é de até 0,5 moedas.

    img

    O primeiro passo é configurar o controle Meta.level1O código de registro criado tem a política test1.level1A classificação. O código de inscrição foi criado:

    购买地址: https://www.fmz.com/m/s/282900
    注册码: 7af0c24404b268812c97b55d073c1867
    

    O proprietário da estratégia envia o código de registro para o proprietário da estratégia.

    Por exemplo, neste momento eu usei esse código de registro em outra conta (o inquilino da política) e recebi o acesso à política test1.

    img

  • Estratégias de uso dos inquilinos

    A estratégia de aluguel, a criação de disco rígido, a estratégia de test1, a adição de um objeto de WexApp (WexApp é um disco simulado da plataforma FMZ), e a execução do disco rígido.

    img

    E você pode ver que a estratégia está funcionando.level1A classificação não limita o número de detentores (número de moedas mantidas na conta de caixa).

  • Modificar meta-dados

    Quando o código de registro da política já está usado, pode ser modificado se o desenvolvedor da política precisar ajustar os metadados do código de registro emitido.

    O blogueiro também escreveu sobre o assunto:

    img

    Os meta-dados podem ser modificados.

    img

    Nós modificamos os dados do código de registro anterior paralevel3A partir daí, o usuário pode iniciar novamente o teste no disco real.

    img

    Como podem ver no gráfico acima, o gatilho foi disparado.level3O limite máximo de posicionamento é de apenas uma moeda.

  • Revisão

    Configure meta-dados de acordo com diferentes grupos de usuários, políticas de aluguel de diferentes níveis de pagamento, para controlar a hierarquia da estratégia.

    É claro que isso é apenas uma lista das necessidades de limitação e controle mais comuns. Há uma grande variedade de necessidades semelhantes que podem ser realizadas com essa função.


Relacionados

Mais.