En la carga de los recursos... Cargando...

Cómo especificar diferentes versiones de datos para la estrategia alquilada por sus metadatos de código de alquiler

El autor:No lo sé., Creado: 2022-03-23 08:54:31, Actualizado: 2022-04-14 09:10:37

Aplicación de la estrategia Metadatos del código de alquiler

Los amigos que desarrollan en la Plataforma de Comercio Cuántico FMZ a menudo pueden tener estas necesidades:

Cuando se desarrolla una estrategia de alquiler, se desea tener diferentes limitaciones de fondos en la estrategia y diferentes limitaciones de la plataforma (limitar las plataformas operadas por la estrategia), o se desea limitar la configuración de la cuenta de la plataforma (especificar la estrategia sólo puede operar en cuentas pre-acordadas; cuando el usuario de la estrategia utiliza otras cuentas, la estrategia se solicita y ya no comerciar y hacer otras operaciones).

Obviamente, estos no pueden ser codificados en forma dura, porque si son codificados en forma dura, todos los usuarios estarán sujetos a estas limitaciones, y no pueden controlar diferentes privilegios de uso para diferentes grupos de usuarios.

Sobre la base de los escenarios de demanda anteriores, la plataforma de comercio de FMZ Quant ha ampliado una nueva función:Configuración de los metadatos del código del registro de alquiler de estrategias.

Al crear un código de registro, puede especificar un metadatosMetaNota: La longitud de Meta no puede exceder de 190 caracteres cuando genera el código de registro.

  • Utilice los metadatos del código del registro FMZ para limitar las estrategias

    Por ejemplo, soy un exportador de desarrollo de estrategias, y he desarrollado una estrategia con un par de comercio al contado de BTC_USDT. La estrategia sólo hace posiciones largas (inicialmente, sólo tiene la moneda de cotizaciónQuoteCurrency, es decir, USDT; después de la compra, mantendrá una posición con elBaseCurrencySi quiero alquilar esta estrategia, el nombre de la estrategia estest1.

    Como puede ver, las limitaciones de la estrategia deben diseñarse específicamente en combinación con la situación específica de la estrategia. Este ejemplo es una demostración de una estrategia spot, pero ¿qué pasa si la estrategia es una estrategia de futuros? Entonces, es necesario limitar la información de la posición de futuros (de acuerdo con los datos de posición devueltos por GetPosition). Cuando la estrategia encuentra que la posición excede el límite, la lógica de colocar una orden y abrir una posición ya no se ejecutará (otra lógica debe ejecutarse normalmente, como cerrar una posición y otras operaciones).

    Por lo tanto, el diseño de esas limitaciones debe combinarse con la estrategia en sí misma; el ejemplo es solo una simple instrucción, sin el valor de uso real.

    Estrategia Código fuente:

    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)
        }
    }
    

    Al crear el código del registro, busque la prueba de estrategia1 en la página Estrategia y haga clic en la parte derechaAcciónbotón, y luego haga clicAlquiler.

img

Haga clicVenta interna.

img

Haga clic en el pequeño icono wrench, y establezca la metadata del código de registro.

img

Luego, usted necesita escribir la información de limitación en elMeta (en inglés)control, como varios niveles de uso de la estrategia diseñada en este ejemplo:

  • nivel1: no hay límite para el importe de la posición;
  • nivel2: límite para el importe máximo de la posición de 10 monedas;
  • nivel3: límite para el importe máximo de la posición de 1 moneda;
  • Meta no establecido: cuando no está establecido, el límite predeterminado para el importe máximo de la posición es de 0,5 monedas.

img

En primer lugar, hemos establecidolevel1en el control Meta, y dejar que el código de registro creado tiene ellevel1del ensayo1. Una vez creado el código de registro, el vendedor de la estrategia enviará el código de registro al comprador de la estrategia.

Por ejemplo, si uso el código de registro en otra cuenta mía (como la cuenta del comprador), tendré derecho a utilizar la prueba de estrategia1.

img

  • Cómo usa la estrategia el comprador de la estrategia

    Como comprador de estrategia, primero debe agregar un bot, elegir test1 como la estrategia, y agregar un objeto de intercambio spot de WexApp (WexApp es el bot simulado de FMZ), y luego ejecutar el bot.

img

Cuando puedes ver la estrategia ejecutada correctamente, eso significalevel1no tiene límite para el importe de la posición (el importe de las monedas en la cuenta al contado).

  • Modificar los metadatos

    Cuando se utiliza el código del registro de estrategias, si el desarrollador de estrategias necesita ajustar los metadatos del código de registro que se enviará, puede modificarlo por completo.

    En la página Estrategia, está en los registros de venta.

    img

    Los metadatos pueden modificarse.

    img

    Hemos cambiado los metadatos del antiguo código de registro alevel3, y el usuario de la estrategia necesita reiniciar el bot para probar.level3limitar el importe máximo de la posición a una moneda.

  • Conclusión

    Al alquilar una estrategia, de acuerdo con diferentes grupos de usuarios y niveles de pago, se puede configurar específicamente los metadatos, para controlar la estrategia por niveles.

    Por supuesto, los ejemplos mencionados anteriormente son sólo las limitaciones más comunes y las demandas de control.


Más.