No estoy muy seguro de lo que quieres decir con este preajuste. En mi opinión, ¿quieres conseguir un conjunto de funciones que calculen los beneficios y marquen los puntos de entrada/stop en el gráfico al mismo tiempo? ¿Y el motor de decisión será diferente para cada uno de ellos?
Y un par de consejos:
extern int BeginYear=2002
mejor que se sustituya por
extern string BeginDate="2002.01.01 18:00"
- es posible trabajar inmediatamente con una construcción del tipo
Time[i] > StrToTime(BeginDate)
Sí y probablemente cosas como
double myOrderOpenPrice=0.0; double myOrderLots=0.0;
también sería más conveniente almacenar como
#define LOTS 0; #define OPEN_PRICE 1; double MyOrder[2] = {0.0, 0.0}; ..................... MyOrder[OPEN_PRICE] = Open[i]; .....................
pero eso es sólo las pequeñas cosas...
?
#define LOTS 0;
Esta es la variable de entrada para el probador.
¿De dónde viene esto?
#define OPEN_PRICE 1;
¿Te has dado cuenta de que todas estas variables (que podrían estar mejor definidas por funciones)
double myOrderOpenPrice=0.0; double myOrderLots=0.0;
Son gemelos del construido en mql-4. Escribí que el objetivo es que nuestro probador y el probador incrustado entiendan el
EA con un mínimo de retrabajo.
El motor de decisión es el código EA. Y se integrará fácilmente en este EA. Y el motor del probador son funciones que sugiero
para "anular" - es decir, tomamos la función estándar incorporada, por ejemplo OrderSend(), y usándola, escribimos una función similar completa - myOrderSend(). Y así sucesivamente.
Escribiré esta función esta noche para que quede más claro.
Hay que ser más minucioso, más minucioso... :)
Esto apareció no hace mucho. Al transferir el texto desde MQL, las letras rusas aparecen de esta manera. Lo mismo que hace FronPage con las letras rusas.
y publicaré el enlace.
¿no puedes borrar la basura?
Es imposible de ver.
Debe ser un fallo del foro, del hosting o de MT al copiar los scripts con texto ruso.
He dedicado un par de semanas a estas pruebas. A primera vista parece sencillo. Obtienes un conjunto de funciones estándar y listo.
Pero este conjunto no es más que una semilla: apertura/cierre, cálculo de ganancias/pérdidas, dibujo de flechas/guiones.
El principal y más importante es el algoritmo de apertura/cierre, que, digamos, ya ha sido descrito en algún Asesor Experto. No se puede arrastrar y soltar este algoritmo
en su totalidad. Sólo se puede hacer por partes. Y luego el seguimiento "sin errores" del código resultante... Además, todo tipo de giros asociados a este proceso...
todo tipo de retoques... En resumen, acabamos escribiendo un programa distinto sobre el mismo tema desde cero por segunda vez. Después de todo eso, en 1 segundo obtienes
o un resultado insatisfactorio, o las flechas están en el lugar equivocado, o se cierran en los lugares equivocados. Entonces vuelves al texto del programa y lo intentas de nuevo...
Tu cerebro funciona en lugar de un depurador, te conviertes en un monitor por un tiempo... Finalmente, al tercer día, la prueba se ejecuta
parece estar bien, pero te convences de que la estrategia "no es buena". Y en este punto, ¡eso es todo! Porque probar la siguiente estrategia de esta manera
no hay deseo de probar la siguiente estrategia. ¿Por qué he escrito todo esto? La idea es atractiva. Y en principio, funciona. Pero, créanme, no es algo
no va a funcionar. Si hablamos de una plantilla, tiene que ser una plantilla muy fundamental, es decir, un diseño muy decente y bien pensado. En general,
el programa no es el más fácil. Y si alguien después de leer este opus no va a romper una lanza en el marco de lo descrito, es decir, utilizar este mi
Si alguien utiliza mi poca, pero no obstante práctica experiencia y avanza sin perder tiempo, puede que algo funcione. Entonces todos aquellos que están sufriendo
(incluido yo mismo) participarán en la construcción de un monumento al autor. :)
para utilizar Asesores Expertos nativos con algunas modificaciones cosméticas. La primera "víctima" es MACD_sample.mq4 .
Es imposible de ver.
Debe ser un fallo del foro, del hosting o de MT al copiar los scripts con texto ruso.
La "basura" fue eliminada. Los programadores probablemente saben lo aburrido que es escribir (comentarios) :).
¿Alguien sabe si he definido correctamente estas constantes según la norma?
int myOP_BUY=0; int myOP_SELL=1; int myOP_BUYLIMIT=2; int myOP_BUYSTOP=3; int myOP_SELLLIMIT=4; int myOP_SELLSTOP=5;
Significado de los valores específicos.
int myOP_BUY=OP_BUY; int myOP_SELL=OP_SELL; int myOP_BUYLIMIT=OP_BUYLIMIT; int myOP_BUYSTOP=OP_BUYSTOP; int myOP_SELLLIMIT=OP_SELLLIMIT; int myOP_SELLSTOP=OP_SELLSTOP;
Sin embargo, no sé la reacción del compilador de antemano, ¿dejará pasar las constantes comerciales en el cuerpo del indicador o no?
Lo más probable es que lo haga.
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Usted acepta la política del sitio web y las condiciones de uso
La plantilla está escrita, es necesario implementar las funciones de comercio escribiendo sus propias funciones.
Quien sea bueno en esto, que se una a nosotros. Funciones de negociación mediante la manipulación de arrays. También necesitamos un experto en el dibujo de objetos en el gráfico - utilizar flechas/dibujos para representar los niveles de apertura, stop y take profit.
También necesitamos organizar la salida del historial de pedidos y las series numéricas en un archivo para abrir gráficos en Excel. En general, todo es muy serio :)
En principio he pensado en todo, pero no soy universalista.
Puedo dar ideas, si alguien quiere. Además, es posible que la variante de fabricación propia en algunos casos de optimización por rendimiento sea capaz de superar a la construida.