aventuras de un novato - página 6

 
cloudbreaker:

No se preocupe. Con sólo unas pocas modificaciones, debería hacer el trabajo por usted.

Usted debe comenzar por la modificación de la TakeProfit "error" que he construido para usted. Echa un vistazo a cómo se hace el StopLoss para obtener una pista.

Una vez que lo tengas funcionando, espero que empieces a añadir el manejo de errores, y algunas cosas amigables para el operador como las declaraciones Print() para que puedas ver fácilmente en los registros lo que está haciendo.

El pseudocódigo es importante antes de comprometerse con el código (incluso para los programadores experimentados), pero no lo cocines demasiado.

Parece que atraes la ayuda debido a tu buen carácter. Supongo que trabajas en RRHH o te interesa la psicología humana.


CB

Hola CB,


Es agradable que alguien diga que tengo un buen carácter. Soy psicóloga de formación, con dos títulos que hacen hincapié en la evaluación y el desarrollo de la personalidad y la psicología positiva. He trabajado mucho con RRHH y formando a directivos sobre cómo hacer que su personal disfrute más del trabajo (lo que en última instancia se traduce en un mayor resultado final y una mayor creatividad).


Sois maravillosos aquí. Me asombra la buena naturaleza humana, y devolveré la acción y la ayuda que me proporcionáis mil veces cuando llegue el momento. ('Pay It Forward' - vea la película si no la ha visto ;)

 

Hola Tim,


He resuelto lo del array que me has puesto (creo). El código está abajo, es correcto. Lo estoy publicando aquí a pesar de haber incluido el EA para que otros que busquen información similar puedan ver rápidamente lo que pasa.


string Pair[] = {"EURUSD","GBPUSD","USDJPY","USDCHF","AUDUSD"}; //***Global Declaration of Array 'Pair' so we can call it in 'start' function   


int count = ArraySize( Pair);                //computer doesn't know how many elements array has, this is necessary to set the value for 'for' loop
for (int c=0; c< count; c++)                   //loop started to go through each element of the Array. After this I don't know how to use this, i guess we substitute OrderSend(Symbol) part with the array name so it loops through that. is that so?
    


ps: por cierto mis archivos mq4 no aparecen todos en la carpeta mt4>expertos, tengo unos 30 expertos pero sólo unos 5 aparecen allí si entro en la carpeta a través de windows o intento adjuntar algo aquí (pero todos aparecen a través de mt4). ¿alguna idea de por qué? (es por eso que he publicado .txt)

Archivos adjuntos:
 

Hola Nick,


Bien hecho.


Ahora voy a subir el listón un poco y sugerir que ahora tiene un ir a escribir el código para la función EntryRules más un poco de otras cosas que usted necesitará para llamar efectivamente esta función.


He añadido bastantes comentarios, ideas y sugerencias al código para que le eches un vistazo. También he marcado las áreas TODO para que puedas trabajar en ellas. Vea lo que puede hacer con esto y publíquelo en el foro cuando esté listo. Si te sientes abrumado, simplemente publica lo que has hecho. Puedo dividirlo en partes más pequeñas si es necesario.


Un par de posibilidades con respecto a los archivos mq4 que faltan. ¿Podría tener los atributos de los archivos establecidos como ocultos? MetaTrader parece que me permite editar los archivos ocultos si voy a través del comando de modificación en el panel del navegador. Otra posibilidad es que los archivos estén en otra carpeta como la de indicadores. Tal vez usted podría tratar de una búsqueda de Windows para todos los archivos mq4 en todos los subdirectorios metatrader e incluir todos los archivos ocultos (utilice el botón de opciones avanzadas para winXP) en su búsqueda.


Saludos

Tim

.

Archivos adjuntos:
 

Si usted está usando Vista, y tiene UAC (Control de Cuentas de Usuario) activado, entonces compruebe aquí los archivos que faltan:

C:\NUsuarios<su nombre de cuenta>\NAppData\NLocal\NVirtualStore\NArchivos de Programa\N<Directorio de instalación de MT4>\Nexpertos

 
cloudbreaker:

Si usted está usando Vista, y tiene UAC (Control de Cuentas de Usuario) activado, entonces compruebe aquí los archivos que faltan:

C:\NUsuarios<su nombre de cuenta>\NAppData\NLocal\Nde la tienda virtual\Nde los archivos de programa<\Ndirectorio de instalación de MT4>\Nexpertos

Gracias CB, lo encontré. Creé un acceso directo para un acceso rápido.

 

Hola Tim,


Ouf, es la 1 de la mañana aquí en el Reino Unido, estoy agotado, tengo que ir a trabajar por la mañana. He estado trabajando en el código según tus sugerencias. Todavía hay muchas cosas desconocidas, pero está progresando bien. Llegué tan lejos como pude sin tu ayuda adicional.


Recorté muchos comentarios en el código para hacerlo visualmente más fácil de manipular (los pegué al final para mi futura referencia), y también creé una sección al final para mostrarte lo que hice y en qué orden, también para hacerte preguntas allí, etc. Como un "Registro de Actividades". Si usted escribe en ese registro entonces sería más fácil para mí para trabajar a través del código, lógicamente, psicológicamente y secuencialmente también.


Espero sus comentarios.

Nick

Archivos adjuntos:
 
niko wrote >>

Hola Tim,

Ouf, es la 1 de la mañana aquí en el Reino Unido, estoy agotado, tengo que ir a trabajar por la mañana. He estado trabajando en el código según tus sugerencias. Todavía hay muchas cosas desconocidas, pero está progresando bien. Llegué tan lejos como pude sin tu ayuda adicional.

Recorté muchos comentarios en el código para hacerlo visualmente más fácil de manipular (los pegué al final para mi futura referencia), y también creé una sección al final para mostrarte lo que hice y en qué orden, también para hacerte preguntas allí, etc. Como un "Registro de Actividades". Si usted escribe en ese registro entonces sería más fácil para mí trabajar a través del código, lógicamente, psicológicamente y secuencialmente también.

Espero sus comentarios.

Nick

Hola Nick,


Siento haberte hecho trabajar tanto.

Parece que estás haciendo progresos. Una vez que entiendas el concepto de arrays y funciones, creo que gran parte de la niebla se disipará.

Te sugiero que te centres en intentar terminar la función EntryRules y su llamada desde la función de inicio (principal). Creo que ya estamos cerca.

Ordenar los viejos comentarios, preguntas, etc en el código es un buen movimiento.

Tómalo con calma, estás haciendo un buen progreso.

Tendremos noticias tuyas pronto


Saludos

Tim

Archivos adjuntos:
 

Hola Tim,

jaja, está bien. Lo ideal es llegar a la fase de depuración antes de irme de vacaciones este miércoles por la noche (durante 8 días, Turquía, Izmere - ¡por fin unas vacaciones!). Estoy en el trabajo en este momento, pero voy a reanudar la codificación durante la hora del almuerzo y tan pronto como llegue a casa. ¡Así que lo tendré con vosotros esta tarde!

¡Gracias por toda tu ayuda Tim!

nick,,

 

Hola Tim,


Hice las partes que me pediste para el código. Gracias por dar respuestas detalladas a mis preguntas y por escribir un montón de comentarios a lo largo del código para ayudarme a entenderlo. Empiezo a ver cómo se combinan las cosas, cómo utilizar correctamente las matrices y llamar a funciones específicas (y el papel de las variables globales y locales).


Adjunto la última versión de nuestro código.


Una pregunta, ¿hay alguna razón por la que no hicimos la función EntryRules para contener todo (incluyendo banderas) para darnos una condición de compra/corta, pero en su lugar la llamamos con banderas más tarde para tomar la decisión de entrada?

Archivos adjuntos:
 

Por CB:


¡Hey high flyer! Hice todo lo que pude con las tareas de Tim y así decidí empezar a mirar tu código con más detalle.


Revisé tu código, tratando de entender y arreglar los errores en él. Conseguí reducir los errores a sólo 'paréntesis desequilibrados' para la cadena fnGenerateSignal(). No sé por qué dice desequilibrio en este caso.


Como siempre, me gustaría saber qué opinas de mis progresos con tu código. Tened en cuenta que todavía hay muchas cosas que no entiendo, incluso las más básicas.

Archivos adjuntos:
Razón de la queja: