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
Lo que quiero decir es que la integración de python con MT5 no es completa. No se pueden obtener los valores de los indicadores DIRECTAMENTE
Lectura de datos en python
Los objetivos del tema son tan sencillos como cinco centavos: permitir que todo el mundo se inicie en el trading algorítmico en Python, simplemente copiando trozos de código como inicializar la comunicación con el terminal, solicitar cotizaciones, pedir al servidor que abra o cierre una operación, etc., etc. Concéntrese en la lógica solamente, y en un lenguaje extremadamente fácil de usar.
Bien... La lógica es exactamente lo que le falta al trading algorítmico: la lógica que se necesita para probar una estrategia de trading antes de que "todos los que vengan" inserten piezas de código y entren en el trading real
de todos modos, buena suerte con tus objetivos "no míticos"
)))
Las personas que no necesitan que los precios se guarden en archivos reescribirán un poco el código, y no "escribir en archivos - leer de archivos", sino sólo la estructura de datos que desean. Es en gran medida un escaparate de cosas primitivas, para los que están dispuestos a dar los primeros pasos.
Sin embargo, quienes ya estén familiarizados con conceptos como listas, tuplas, diccionarios, etc.
Propongo leer de los archivos de precios con la función read_all_files_with_prices, que activará la función read_file_with_prices para leer el archivo de precios de cada instrumento.La función read_file_with_prices devuelve un array numpy.ndarray con filas y columnas correspondientes al fichero de precios original (si los precios se leyeron con éxito y se comprobó la integridad de los datos, cada tipo de elemento es numpy.float64), o la cadena 'no data' si no se leyeron datos o están incompletos .
Que la función read_all_files_with_prices devuelva un diccionario con las cotizaciones de todos los instrumentos. Supongamos que las claves de este diccionario son los nombres de los instrumentos, y los valores son los diccionarios con comillas de un instrumento correspondiente. En los diccionarios con comillas para un símbolo las claves son fecha_hora, los valores son barras (clase bar); además, sugiero proporcionar claves :
'is_data': valor de la clave - Verdadero si hay una cita, Falso - si la lectura del archivo devolvió 'no data',
'instrumento': valor clave - instrumento (str);
'prices': key-value - array de precios del instrumento (numpy.ndarray)
En resumen, esta es la estructura de datos que sugiero:
El código de Python está mejor colocado como capturas de pantalla del IDE/editor/sitio.
La falta de resaltado local, al menos de los comentarios de código, hace que sea poco legible, se confunde con el texto principal.
Se han añadido funciones para leer archivos y crear la estructura de datos anterior:
El código de Python está mejor colocado como capturas de pantalla del IDE/editor/sitio.
La falta de resaltado local, al menos para los comentarios de código, hace que sea poco legible, se mezcla con el texto principal.
Pero se puede copiar y abrir en el IDE, pero desde la imagen se puede volver a escribir manualmente excepto...
El trabajo del programa mostrado arriba:
Básicamente, casi todo está listo para empezar a analizar datos y tomar y ejecutar decisiones de trading.
Pero se puede copiar y abrir en el IDE, mientras que la imagen sólo se puede reescribir a mano...
No creo que nadie se moleste en copiar y pegar el código... nadie lo necesita aquí
para leer y discutir, sí. Recoge algo curioso o da alguna pista. Y no creo que lo cargue en el IDE. La gente publica en el foro para que otros lo lean y para usar el código lo adjuntan o lo enlazan al repositorio (o los combinan).
Pero esto es una distracción.
Ponga el siguiente código en el archivo Functions.py, una función que calcula la SMA
Necesito los parámetros d y k para realizar un desplazamiento temporal, no el punto, los pondremos a cero.
Se me ocurrirá una simple lógica tonta, como:
para cada instrumento calculamos la SMA con un retraso de z=100 intervalos entre muestras, es decir, la SMA del orden s=1+2*z=201.
Si no hay operaciones en el mercado o su cantidad (para un determinado símbolo) es inferior a la cantidad admisible (por separado para Vender y Comprar)
si el precio está actualmente 30 pips o más por encima de la SMA(201) - abrir operación de venta con SL=TP=50 pips,
si el precio está actualmente 30 pips o más por debajo de la SMA(201) - abra una operación de compra con SL=TP=50 pips.
Si en algún momento el beneficio de la operación alcanza los 20 pips - ciérrela sin esperar al cierre por SL o TP.
Pongamos como ejemplo una operación de este tipo. Simple, tonto, desde el punto de vista comercial, pero la esencia del asunto es la aplicación.
Sugiero estas funciones para la apertura y el cierre de las operaciones: