
Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
Voy a apoyar el tema de arranque, he prestado mql para muchas veces como 4 y 5, y voy a decir que yo personalmente tengo pocas ganas de aprender el lenguaje que puedo utilizar sólo aquí en el comercio ...
Bueno, eso es por nada o porque no entiendes el problema. ¿De verdad vas a volver a escribir los algoritmos de los indicadores? Es como ir de Volgogrado a Moscú vía Vladivostok. Una cosa más, todos los indicadores tienen en cuenta la historia. Es decir, si tomas los datos (barras) de un mes, calculas el indicador según tu algoritmo y lo comparas con Terminal, tus cálculos serán diferentes.
Yo tampoco entiendo la frase:
Basado en lo que escribí, resulta que hay una gran capa de conocimiento de Python :) Abres un editor y ya sabes python, es muy fácil, y abres mql y no sabes nada.
Al mismo tiempo, llamar a mql, queestá completamente orientado a la plataforma, una herramienta "obsoleta"... python fue creado en 1991 y esto es muy anterior
Lo que he visto en este hilo, escrito en python, es muy fácil de implementar en mql
---
Bueno, es interesante como idea general, pero no más.
Además no se aprovecha de Python y no es "estilo Python". Es como martillar clavos con un destornillador, el martillo está anticuado.
Sospecho que la única vajilla que hay en tu casa es una cuchara: puedes hacer una sopa o un pastel y es más seguro usarla
)))
Si te gusta, usa Python, pero no como tópico - no crees tus propios tipos de datos personalizados - barras y demás, no escribas tus propios cálculos ... y usa las soluciones existentes, de lo contrario no tiene sentido usar este lenguaje, también puedes escribir tus propios paquetes de redes neuronales ;)
Sí) Por cierto, no hay ninguna biblia en Python para estas funciones casi comerciales, o si puedes escribir el análisis estadístico completo de una serie en un par de líneas, no necesitas MA)...
Sí) Por cierto, no hay una biblioteca de Python para todo tipo de funciones casi comerciales, o si puedes escribir un análisis estadístico completo de una serie en un par de líneas, entonces el MA ya no es necesario)...
Las 101 mejores bibliotecas de comercio algorítmico en Python | PythonRepo
Ayer no pude volver al foro. Continuaré. Inicié una nueva cuenta demo, y en ella están los nombres de los instrumentos sin '_i' al final, así que corregí el código en esta parte.
Seguiré el movimiento gradual y lento, una especie de micro-tutorial, para aquellos que les pueda venir bien.
Introduzcamos una variable n (pequeña), sea, por así decirlo, la longitud de la ventana. Es decir, en archivos con precios, N lecturas, por ejemplo, 1000, y n, pongamos, por ejemplo, 10, o 100, o 288 (un día, si el marco temporal es M5).
La variable d para mí significa el desplazamiento de esta ventana en el tiempo, hacia el pasado. Pongamos d = 0.
Por ejemplo, mostraremos 10 lecturas de precios de cierre y SMA del orden de 101 (con un retraso de 50 intervalos entre lecturas):
Resultado del trabajo:
Aprendamos a interrogar al terminal sobre las operaciones actuales en el mercado, por así decirlo, de los instrumentos.
Voy a introducir la función
Que tome la lista de posiciones abiertas del símbolo y devuelva la tupla(el número de operaciones a vender, el número de operaciones a comprar).
En la función principal añade este fragmento antes de la función terminal_done()
El resultado (n se reduce a 5 por el bien de la salida):
Propongo iniciar la apertura real de operaciones. Por ejemplo: si el precio es superior a la SMA en algo: abra una operación de venta, si es inferior a la SMA en algo: abra una operación de compra.
Sugiero un par de funciones más: para controlar las operaciones abiertas en términos de SL y TP, cerrarlas si están ausentes, y una función que devuelva el resultado actual (beneficio o pérdida) en pips.
Tenemos que recordar manejar de alguna manera la situación cuando la orden ya está en el historial y no está en la posición activa, y no volver a enviar la orden para la apertura en este caso.
Esta situación se da de vez en cuando y, por ejemplo, trabajar a través de Trade.mqh no resuelve este problema (al menos, no lo hacía antes - hace tiempo que dejé Trade.mqh).
A veces es al revés: la orden de cierre ya está en el historial y la posición sigue siendo visible.
Tenemos que recordar manejar de alguna manera la situación cuando la orden ya está en el historial y no está en la posición activa, y no volver a enviar la orden para la apertura en este caso.
Esta situación se da de vez en cuando y, por ejemplo, trabajar a través de Trade.mqh no resuelve este problema (al menos, no lo hacía antes - hace tiempo que dejé de usar Trade.mqh).
A veces es al revés: la orden de cierre ya está en el historial y la posición sigue siendo visible.
He mostrado cómo interrogar al terminal sobre las posiciones abiertas. Nada nos impide escribir el código de tal manera que si la posición ya existe, no tendríamos que reenviar la solicitud, si no - lo haremos. Especialmente, que después de enviar una solicitud, se devuelve el objeto, que tiene todo en sus propiedades, podemos ver si es normal, o qué tipo de error está presente, y en base a este acto. No hay ningún problema.
Las 101 mejores bibliotecas de comercio algorítmico en Python | PythonRepo
Ya es 104) Es 105)
Código completo del archivo TradeLogic.py hasta ahora (sí, es primitivo, pero estoy seguro de que podría abrir la puerta al trading usando Metatrader 5 y Python para algunos)
Resultado del trabajo:
Z.I.Y. Los trozos de código más primitivos, elementales, mostrados, en mi opinión, ya demuestran bastante claramente que no es difícil implementar absolutamente cualquier lógica, cualquier cálculo, comparaciones, control de las operaciones abiertas por varios criterios, cerrándolas automáticamente bajo algunas condiciones, manteniendo registros tanto en la línea de comandos como escribiendo en archivos, etc., etc. - cualquier cosa sin ninguna restricción.
S.U.2 Hasta ahora no he utilizado la clase Sdelka, y en general es conveniente pasar objetos de esta clase en funciones, escribirlos en archivos como .json, etc. - pero de alguna manera estoy un poco cansado, creo que los que quieren entender, puedo ayudar aquí con algo. Si quieres, puedes atornillar una interfaz gráfica.
Recomiendo encarecidamente el comercio con Python + biblioteca metatrader5.
He mostrado cómo sondear el terminal en busca de posiciones abiertas. No hay nada que le impida escribir el código de manera que si ya hay una posición, entonces usted no necesita volver a enviar la solicitud, si no - enviarlo. Especialmente, que después de enviar una solicitud, se devuelve el objeto, que tiene todo en sus propiedades, podemos ver si se abrió normalmente o hay un error, y en base a este acto. Aquí no hay problemas.
Una vez más, la orden ya ha sido ejecutada y ha pasado a la historia. Ya no está en posición activa. La posición ya se ha abierto, pero aún no es visible; la solicitud no la muestra.
Por lo general, se trata de un intervalo de tiempo muy corto y es difícil alcanzarlo, sobre todo porque no siempre es así.
Sin embargo, esta situación puede no durar ni siquiera segundos, sino minutos en una apertura matinal con un hueco y una gran cantidad de órdenes.
Para que quede más claro: TRADE_TRANSACTION_ORDER_DELETE ha llegado antes que TRADE_TRANSACTION_HISTORY_ADD o TRADE_TRANSACTION_DEAL_ADD
Y es posible que en algún momento no veamos las órdenes en el activo o en el historial, o que no veamos ninguna orden u operación.