Robots en Tinkoff y Binance en JavaScript y + $ 5000;

Toda la comunidad de desarrolladores de robots comerciales se está gestando en torno a Python y C # . Cuando se les pregunta por qué estos lenguajes son los que comienzan a quejarse indistintamente sobre el multiproceso, la cantidad de bibliotecas listas para usar y, a veces, incluso sobre los semáforos. Así que decidí intentar meterme en esta mezcolanza, sí, es una mezcolanza, no hay otro nombre para eso.



En general, hay muchas herramientas que parecen ser adecuadas directamente para el trabajo, pero tan engorrosas y de alguna manera tienen todo abarrotado en diferentes rincones y existen en un completo desorden creativo. Al mismo tiempo, nadie hace la pregunta "¿cómo y por qué funciona así?". Todo el mundo está tratando de escribir algo para ganar algo de dinero, si tienen suerte.



Como es habitual con muchos desarrolladores, me preguntaba de qué son capaces JavaScript y V8 con JIT, ¿pueden proporcionar la velocidad necesaria para matemáticas complejas? E inicialmente todo comenzó más como una misión de investigación. Y el caso, por cierto, fue hace año y medio.



Entonces, lo que necesitamos para desarrollar y lanzar una estrategia comercial, por ejemplo, en Tinkoff Investments :





  1. Indicadores técnicos de JavaScript. Es bueno que sean, aunque no muy abundantes. Tomemos los indicadores técnicos más populares por descargas.





  2. Cualquier cosa para trabajar con Tinkoff, su biblioteca invest-openapi-js-sdk





  3. Tomemos la estrategia más estúpida del mundo, por ejemplo, 2 SMA: rápido y lento, que tienden a converger nuevamente en caso de divergencias.





  4. A pesar de la estupidez de la estrategia, es necesario optimizarla inteligentemente: ya sea de acuerdo con Monte Carlo o usando la genética, tomemos la genética, porque simplemente suena más hermoso. Algoritmo genético de biblioteca adecuado





Un poco más de detalle sobre la estrategia y sobre la divergencia de las dos líneas SMA. Se basa en el deseo de corrección del mercado. Si la SMA con un período más rápido cae por debajo de la SMA con uno lento, entonces el mercado ha realizado un cambio brusco en el precio, que con cierta probabilidad se corregirá hacia atrás. En la imagen de abajo, tales divergencias se muestran con flechas, casi todas tienen un movimiento inverso. Este es un buen punto de entrada para comprar acciones. Se pueden ingresar posiciones cortas cuando la SMA rápida se ha movido bruscamente por encima de la lenta.





Gráfico de acciones de Tesla y estrategia tonta
Gráfico de acciones de Tesla y estrategia tonta

, - , .





, SDK . , , , - , , 3 . SDK , GitHub. , .





3 : " - ", . - , . , 30 . , ( ), .



- . , . , , , ...



. , "" .





La mariposa se mueve al azar

, .



, 100 20 , * *, . .





Las mariposas vuelan a un punto específico

- , , . .



, . , , , , , , . « » ( ) « » ( ). , . .



. , :





= -





, . . .





, , , , . 100 500 .



, , (). .



100 , 100 , , . . , ( ) . , 50. fastSMAPeriod



slowSMAPeriod



, .



, , , , .





, . , : - . , ...





, - - 2 . . , 5 ;) . , , , . . , JavaScript.



async-genetic , . , . - , , " " 2 ( ).



, .





Visualización de tratos por estrategia

SMA, . . , . - . .



, . . NodeJS , , , . ? . .



, . . , , . - ! , , . , new Date()



. . :





3 , . , , . .





, , . 15 .





, . , - , . 5000$, , .





. , 30-100 . ( ). , .





Debut.





Debut - .  ZenBot, . ,    . - :   - (, , ),   - ( ), .





Debut , . Debut, . :    Binance ( , - ).





" " . .





, , - .








All Articles