Construye rápidamente tu propia plataforma de intercambio cuantificado multiusuario de bajo costo

El autor:Un sueño pequeño., Creado: 2018-04-14 14:30:55, Actualizado: 2019-07-31 17:42:26

Construye rápidamente tu propia plataforma de intercambio cuantificado multiusuario de bajo costo

Cualquiera puede construir una plataforma de comercio cuantitativo con la API de extensión cuantitativa de los inventores, y este ejemplo muestra cómo construir una plataforma de comercio cuantitativo con fuertes funciones con Python y la API de extensión cuantitativa de los inventores.

  • Incorporar el sistema existente

    Según este proyecto DEMO, se puede escribir código de servidor, agregar páginas de frontend para integrar sistemas existentes como foros, blogs, comunidades, etc. Para lograr un acceso flexible a los grupos de usuarios existentes, y para que los grupos de usuarios existentes no experimenten completamente el soporte tecnológico de base cuantificado por los inventores, el uso de los usuarios es más sencillo y fácil de usar.

  • Apoyo al mercado

    • CTP Futuros de productos (centros de venta, tiendas, grandes almacenes, centros de inversión)
    • Las bolsas de divisas (CME, CBOT, etc.)
    • Más de 30 plataformas de intercambio de activos de blockchain en todo el mundo
  • Crear su propia plataforma de cuantificación

    • Diseño de estrategias de alta libertad

      Escribe estrategias de comercio cuantificadas en Python, JavaScript y C++, con la libertad de personalizarlas para realizar tus propias ideas de comercio en el mundo de los intercambios cuantificados.

    • Un sistema de retrospección potente y eficiente

      A partir de ahora, ya no se necesita recolectar datos con tanto esfuerzo, y el motor de sistemas de retrospección local se puede configurar fácilmente con solo un comando, enlace:https://github.com/fmzquant/backtest_python

    • La arquitectura simplificada

      Con solo escribir algunas páginas de frontend, un programa de servidor HTTP se puede construir fácilmente.

  • Proyecto DEMO

    • Nombre: Inventor Quantified demuestra cómo construir su propia plataforma de gestión de activos con la API de extensión de Inventor Quantified

    • Este proyecto DEMO está instalado

      • Primero clone este proyecto demo.

        git clone https://github.com/fmzquant/fmz_extend_api_demo.git
        

        alt

      • Cambiar a este directorio, ejecutar pip, instalar

        img

        pip install -r requirements.txt 
        

        img

        Nota: Si se le indica Permission denied, se requiere que sudo pip instale -r requirements.txt para ejecutar pip, ingresando el código del sistema operativo según lo solicitado.

      • Después de la instalación, configure el programa de servidor que desea usar Cuantificar el inventor KEY de la cuenta

        Cuantificación de los inventores Extensión del uso de API KEY Para más información, vea la documentación de la API de cuantificación de los inventores:https://www.fmz.com/api

        Creado por el inventor Cuantificar API KEY

        img

        En este caso, la clave de la API es la clave de la versión de demostración.app.pyLos programas del servidor.

        img

    • Este proyecto DEMO ejecuta comandos en el servidor

      python app.py
      
      • El ejecutivo muestra:

        img

        Después de ejecutar el programa del servidor, abra la página local en el navegador:http://127.0.0.1:5000

        img

      • Página de registro de pruebas

        img

        La plataforma de cuantificación DEMO del proyecto ya está en funcionamiento, registra tu cuenta de la plataforma de prueba (que almacena datos locales), accede y configura la API KEY como usuario de la plataforma.

        img

        img

        Ahora está configurado de la siguiente manera:

        img

        Las tres políticas que se muestran en la página son solo una muestra de la interfaz de usuario, que también requiere que los administradores de la plataforma de gestión de activos de cuantificación se diseñen específicamente para implementar, solo para una demostración.

      • Configurar una política de prueba En este proyecto DEMO, el servidor detecta una política de búsqueda en la cuenta de inventor cuantificada que contiene la palabra clave "main" en una tecla de inicio de botón pulsada y utiliza esta política para enlazar el botón. Así que primero creamos una estrategia llamada principal test profit.

        El código de la estrategia principal de Test profit es el siguiente:

        function main() {
            while(true) {
            LogProfit(Math.random()*100);
                Sleep(1000);
            }
        }
        

        img

        Después de editar el código, haga clic en Guardar.

        Nota: Es necesario asegurarse de que hay un administrador en línea antes de operar.https://www.fmz.com/bbs-topic/463

      • Al hacer clic en el botón de inicio, se creará automáticamente un bot que se ejecutará, el cual vinculará una política de demostración que solo mostrará los valores de rendimiento al azar.

        En el centro de control cuantificado por el inventor, se puede ver un nuevo robot creado:img

        El DEMO también muestra los valores aleatorios correspondientes en la página webimg

      • El robot que funciona en el inventor cuantificado es identificado por el appId de los usuarios que están conectados a la plataforma DEMO actual

        img

        def robot_run(robotId, appId, exchanges):
            strategyId = -1
            # 从策略库里选出一个包含main字符串的策略运行, 也可以预定义
            for ele in api("GetStrategyList")['data']['result']['strategies']:
                if 'main' in ele['name']:
                    strategyId = ele['id']
            if strategyId < 0:
                raise u"not found strategy"
            settings = {
                    "name":"robot for %s" % (appId, ),
                    "args": [], # our custom arguments for this strategey
                    "appid": appId, # 为该机器人设置标签,关联到本用户
                    "period": 60,
                    "strategy": strategyId,
                    "exchanges": [],
                    }
            for e in exchanges:
                settings["exchanges"].append({"eid": e.eid, "pair": get_default_stock(e.eid), "meta" :{"AccessKey": e.accessKey, "SecretKey": e.secretKey}})
            if robotId > 0:
                return api('RestartRobot', robotId, settings)
            else:
                return api('NewRobot', settings)
        

        Como se puede ver, en el código de configuración se crea la información de configuración del robot, y el appid se utiliza para marcar al usuario.

  • Actualización

    # Github 地址更新:  https://github.com/fmzquant/fmz_extend_api_demo
    

Más.

Nature cuantifica las inversionesEl entorno configurado ha estado mal. ¿Por favor, necesita esa versión de Python? ¿Con qué entorno se necesita?

- ¿ Por qué?La plataforma de cuantificación construida de esta manera, 1 otros usuarios registrados, ¿sólo pueden ver las políticas creadas por el administrador? ¿Pueden ver el código fuente? 2 ¿Pueden los usuarios configurar la API de intercambio del usuario basándose en las políticas del administrador y ejecutar su propia plataforma virtual?

- ¿ Qué pasa?La ambición es grande, la clave es la capacidad de ser ambicioso.

J.La plataforma que construimos sólo puede ver y controlar el funcionamiento de los robots, no puede escribir estrategias y añadir robots.

Un sueño pequeño.Este es un DEMO, es de código abierto y puede ver el código fuente directamente.

- ¿ Por qué?Está bien, gracias.

Un sueño pequeño.¿Por qué no lo haces? Además, ¿cómo añadir estas funciones al foro? ¿Por qué no lo haces? Estos pueden desarrollarse específicamente. Este demo es simplemente que puedes construir un sitio web por ti mismo, y luego usar el servicio de disco físico de FMZ a través de la API de extensión de FMZ. Así que simplemente construyes un sitio web y puedes hacer una plataforma.

- ¿ Por qué?¿El costo de funcionamiento de los usuarios es de $ 0.05 / hora?

Un sueño pequeño.Puedes diseñar una política para que los usuarios la vean y configuren sus propios parámetros. Estas se basan en el diseño de tu producto (el servicio subyacente es FMZ).

Un sueño pequeño.Por el momento no está abierta la interfaz de escritura de políticas (posiblemente se abra más adelante), otras funciones están disponibles (por ejemplo, crear robots, etc.), las herramientas de depuración de la interfaz también están compatibles.