asesor experto - preguntas varias - página 18

 

Marco vd Heijden:

Bueno, si realmente quieres esperar por cada tick tendrás que escribir un EA separado para cada símbolo y utilizar la función OnTick().
Pero te puedo decir que yo también programo microcontroladores y están en un bucle while infinito (para siempre) hasta que se produce un fallo de alimentación, o una interrupción.
Para comprobar si una condición es verdadera o falsa, utiliza el tipo de datos booleano más pequeño y su procesador ya hace eso millones si no miles de millones de veces por segundo con todos los procesos que se ejecutan en segundo plano y los gráficos, etc.
Es cuando empiezas a hacer cálculos pesados que implican tipos de datos más grandes, que esto se convierte en un problema.

#Cálculos de pedidos y actualizaciones de lainformación de la cuenta- Cerrado

Gracias por el comentario.

EA separados, ¡oh! Realmente no me gusta jugar con múltiples EA.
Tal vez voy a utilizar continuamente bucles incluso a veces bucles para nada.

// I hope one of below them will work for me
EventSetMillisecondTimer( 750 );
EventSetTimer( 1 );

No creo que mi PC tan débil, espero que me puede ayudar.
...cálculos pesados... hmm, realmente no sé - "Órdenes de venta, compra, beneficio, todas las posiciones" cálculos son pesados o qué? ¿Es eso pesado, por favor?

Así que, gracias por sus comentarios.
Todo lo mejor.

 

No, eso no son cálculos pesados, y recuerda que fue diseñado para manejar todas las posiciones.

Aquí hay un ejemplo de lo que puede hacer fácilmente.


Así que aquí está pidiendo los volúmenes en todos los marcos de tiempo para todos los símbolos y también la primera fila que es el spread para todos los símbolos disponibles.

Ahora tiene que ordenar desde el mínimo al máximo en todas las variables para todos los símbolos así que eso es mucho trabajo.



O esta es una matriz Renko de múltiples símbolos.

El componente vertical de los ladrillos de apilamiento se ha eliminado, ahora se colocan 40 ladrillos de pip en horizontal, lo que hace que sea adecuado para comparar todos los símbolos entre sí en un solo gráfico.

Normalmente serían 26 gráficos Renko separados, lo que haría MUY difícil compararlos todos, pero con este tipo se puede hacer en un abrir y cerrar de ojos.

Por supuesto, tiene que seguir el movimiento de 26 símbolos, lo que también es mucho trabajo, pero no realmente para un ordenador bueno y rápido, así que espero que entiendas el punto.

Todo se hace con un temporizador de ejecución rápida, ni siquiera sabría cómo codificarlo en una base de tick por símbolo sería una locura si me preguntas.

 

Marco vd Heijden:

Todo se hace con un temporizador de ejecución rápida, ni siquiera sabría cómo codificarlo en una base de tick por símbolo sería una locura si me preguntas.

Gracias hombre por el comentario.

Solo tengo que decir que si me meto en esto, se que saldré de allí como un codificador o programador. ( porque si alguien necesita hacer eso podría ser codificador o programador... )
Eso me llevará mucho tiempo. Solo es una renuncia...

Creo que podría cerrar este subtema, porque me preocupa que me lleve mucho tiempo.
A veces me pierdo en esta industria del código.
De todas formas hasta ahora he conseguido muchas cosas de esa industria del código.

Después de su último comentario y creo que si tengo que conseguir sólo Terminal Trade panel de símbolos garrapatas, podría tratar de maneras muy diferentes ( pero en realidad mi conocimiento del código no me puede dar esa oportunidad ).
También estoy pensando que realmente soy el primer hombre que está pensando en las garrapatas del panel de Comercio Terminal? ( No me gustaría que esto sea así. )

Vi hace mucho tiempo algunos Dashboard EA - que es no soy realmente interesante ese tipo de EA, es absolutamente no es útil para mí.

Muchas gracias por tus intentos de ayudarme.

( El inglés no es mi lengua materna )

 

Lleva tiempo, pero no es eterno.

Y cuando te vuelvas más inteligente también serás más rápido debido a la experiencia.

El comienzo es la parte más difícil.

Puedes hacerlo tan sencillo o tan complicado como quieras.

Pero puede ser más fácil empezar con cosas sencillas.

Pero, ¿cuál es tu objetivo, quieres ser un buen codificador? o ¿quieres ser un buen trader? o ambos?

 

Marco vd Heijden:

Se necesita tiempo, pero no para siempre.
Y cuando te vuelvas más inteligente también serás más rápido debido a la experiencia.
El comienzo es la parte más difícil.
Puedes hacerlo tan simple o tan complicado como quieras.
Pero puede ser más fácil empezar con cosas sencillas.
Pero, ¿cuál es tu objetivo, quieres ser un buen codificador? o ¿quieres ser un buen trader? o ambos?

Sí, tienes razón, pero no tengo suficiente tiempo para ello por ahora, como he dicho que me preocupa que va a tomar un montón de tiempo de mí.

Sí, cuando empecé a escribir una secuencia de comandos para mi panel de comercio de EA, empecé cosas simples, pero ahora me encanta mi panel de comercio de EA. Sí, me tomó mucho tiempo, pero vale la pena.

En realidad, hoy no estoy pensando en ser codificador y programador. Pero eso no significa que no sepa lo que es un codificador y un programador.
A veces tengo una idea pero creo que no puedo hacerlo, creo que no puede ser posible.
Sólo hay una razón, que es sólo mi pobre conocimiento de código.
También no puedo escribir esas ideas, pero no sé por qué.

Sí. Hoy quiero ser un buen trader y luego codificador.

Gracias por tu tiempo.

 

Puedes ponerlo en un diagrama de flujo es un poco más fácil.

Aquí tienes un ejemplo:

Puedes hacerlos gratis en http://draw.io

draw.io - free flowchart maker and diagrams online
draw.io - free flowchart maker and diagrams online
  • draw.io
draw.io (formerly Diagramly) is free online diagram software. You can use it as a flowchart maker, network diagram software, to create UML online, as an ER diagram tool, to design database schema, to build BPMN online, as a circuit diagram maker, and more. draw.io can import .vsdx, Gliffy™ and Lucidchart™ files .
 
Marco vd Heijden:

Puedes ponerlo en un diagrama de flujo es un poco más fácil.
Aquí tienes un ejemplo:
Puedes hacerlos gratis en http://draw.io

Vaya, gracias por compartirlo conmigo.
Lo probaré cuando pueda sacar un rato para ello.

Muchas gracias hombre.

 

#Spread Lines - Abierto

P: Si estoy usando varios objetos TrendLine, ¿debo usar la función ' ObjectMove ' para cada uno de ellos?
Sólo estoy buscando métodos inteligentes para ellos, por favor dame un consejo o ayúdame con un ejemplo.

ObjectMove( name, 0, Time[0], Bid );
ObjectMove( name, 1, Time[0] + ( PeriodSeconds( NULL ) * 1 ), Bid );

Como usted sabe, si estoy usando los objetos TrendLine para las líneas de propagación, los tamaños de los objetos TrendLine podrían cambiar en diferentes marcos de tiempo y escalas del gráfico.
P: ¿Cómo puedo aprender sobre eso con un ejemplo?

P: Además, necesito escribir ese script en el panel de operaciones de mi EA, ¿cuál es su consejo, por favor?

Gracias por adelantado.

 

¿Te refieres a una línea vertical que se mueva sobre el nivel de precios, a una línea horizontal que se mueva sobre el eje temporal, o a una línea de tendencia por ángulo que se mueva a lo largo de ambos?

Puedes moverlas mediante ObjectMove() o eliminarlas y dibujar otras nuevas.

Si depende del marco temporal puedes usar el cambio de marco temporal publicado unas páginas atrás.

Yo siempre borro todo al cambiar a un marco de tiempo diferente en OnDeinit() y luego dibujo nuevos en OnInit() o una función de dibujo separada().

Si quieres sólo líneas de propagación que son los mismos en cualquier marco de tiempo por lo que sólo puede crear dos o tres en oninit () y moverlos en OnTick ().

//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
          
   ObjectCreate("Ask",OBJ_HLINE,0,0,Ask);ObjectSetInteger(0,"Ask",OBJPROP_COLOR,clrGold);ObjectSetInteger(0,"Ask",OBJPROP_WIDTH,1);
   ObjectCreate("Bid",OBJ_HLINE,0,0,Bid);ObjectSetInteger(0,"Bid",OBJPROP_COLOR,clrGold);ObjectSetInteger(0,"Bid",OBJPROP_WIDTH,1);
   ObjectCreate("Center",OBJ_HLINE,0,0,(Ask+Bid)/2);

   ObjectSetInteger(0,"Ask",OBJPROP_SELECTABLE,false);
   ObjectSetInteger(0,"Bid",OBJPROP_SELECTABLE,false);
   ObjectSetInteger(0,"Center",OBJPROP_SELECTABLE,false);

   ObjectSetInteger(0,"Ask",OBJPROP_BACK,true);
   ObjectSetInteger(0,"Bid",OBJPROP_BACK,true);
   ObjectSetInteger(0,"Center",OBJPROP_BACK,true);

   ObjectSetInteger(0,"Center",OBJPROP_COLOR,clrDeepSkyBlue);
   ObjectSetInteger(0,"Center",OBJPROP_WIDTH,1);
   ObjectSetInteger(0,"Center",OBJPROP_STYLE,STYLE_DASH);

//---

   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+


//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
   ObjectMove("Ask",0,0,Ask);
   ObjectMove("Bid",0,0,Bid);
   ObjectMove("Center",0,0,(Ask+Bid)/2);
  }
//+------------------------------------------------------------------+


Bastante simple o tienes algo más en mente?

 

Marco vd Heijden:

Bastante simple o tenías algo más en mente?

#Líneas de propagación - Cerrado

Gracias por tu gran comentario que me está ayudando mucho.

No, no necesito usar la línea vertical y la línea horizontal sólo para esta función. ( Pero voy a utilizar la línea horizontal para la línea OrderOpenPrice() )

Para qué necesito usar objetos TrendLine como una línea de Spread Prices - Bid & Ask Lines.
( Cuando mi conocimiento de código bajo cero - tenía tienen idea sobre el diseño de las líneas de propagación - pero pensé que no es posible hasta que vi un indicador que se cambia las líneas de propagación - y me inspiró y por lo que ya comenzó a tratar de hacerlo por mí mismo - incluso ese indicador es libre - No me gusta usar EA y el indicador que uno de ellos hizo por otras personas - sin " Indicador de Noticias " )

N( ustedNoted): Si es timeframe dependiente usted puede utilizar el interruptor de marco de tiempo publicado unas páginas atrás.
N: Siempre borro todo al cambiar a un marco de tiempo diferente en OnDeinit() y luego dibujo nuevos en OnInit() o una función de dibujo separada().

Por supuesto que probaré esto.
Me gustaría señalar:
Como mencioné hice un montón de cosas hasta ahora para mis indicadores y ea's realmente todos ellos funciona perfectamente para mí, pero si usted pregunta cómo lo hizo?
Oh, no puedo recordar cómo hice todo eso así que, sólo quiero decir, voy a comprobar algunas páginas atrás...

Y me gustaría estudiar cómo puedo dibujar nuevos..., porque hasta ahora veo un problema cuando cambio de marco de tiempo TrendLine no se mueve correctamente.

---

Estoy probando el código de abajo para las Líneas de Spread - Líneas de Compra y Venta.
P:¿Cuál es el código que mencionaste, es el que puede resolver mi problema, por favor? ( No lo he probado todavía. )
P:¿También es posible que me permita lo que está mal en el código de abajo?

S: ( Ya resolví ese problema. )

Gracias de antemano.