[¡AVISO CERRADO!] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen. No puedo ir a ningún sitio sin ti. - página 680
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
¿Cómo puedo ponerme en contacto con ustedes? Tengo muchas preguntas y me gustaría recibir algún consejo.
Yo sustituiría un conmutador por una matriz ya preparada, ¿por qué asignar valores predefinidos cada vez?
Gracias, pero ¿podría ser más específico? Porque los valores predefinidos aquí son los plazos, pero el código que sigue los casos para diferentes indicadores será diferente... Probablemente, es más fácil poner un poco más de código... :) En general estoy muy lento hoy - no pude dormir anoche y sigo en el limbo...
Verás - hay un código absolutamente idéntico, pero ya está comprobando los criterios de negociación de otros indicadores... Sólo quiero meter todas las comprobaciones de todos los índices utilizados en el EA en un bloque analítico, de manera que calcule sus valores una vez por cada tick, los ponga en variables y utilice los valores de las variables para las decisiones de trading. No sé cómo organizarlo utilizando un array de valores predefinidos...Gracias, pero ¿podría ser más específico? Porque los valores predefinidos aquí son los plazos, pero el código que sigue los casos para los diferentes indicadores será diferente... Probablemente, es más fácil poner un poco más de código... :) Hoy no pienso con claridad, anoche no pude dormir y sigo en el limbo...
Verá, hay un código absolutamente idéntico, pero ya comprueba los criterios comerciales de otros indicadores... Sólo quiero meter todas las comprobaciones de todos los índices utilizados en el EA en un bloque analítico y entonces calculará sus valores una vez por cada tick, los pondrá en variables y utilizará los valores de las variables para las decisiones de trading. No sé cómo organizarlo utilizando un array de valores predefinidos...Tal vez sólo necesite seleccionar una prioridad de cálculo, es decir, parece que tiene
Si (BB_1<0 ) es la primera condición obligatoria después de la cual no es necesario calcular otras BB_, pues bien, haga un if compuesto y haga los cálculos de BB_ necesarios en el segundo if, siempre que el primer if se haya hecho, y si ... else es bastante eficaz, mientras que usted sólo tiene if
Estoy de acuerdo, el código puede ser más grande y menos legible, pero el rendimiento subirá
tal vez sólo hay que recoger la prioridad de cómputo, es decir
Si (BB_1<0 ) es la primera condición obligatoria, después de la cual no es necesario calcular otras BB_, por lo que hay que hacer un if compuesto y realizar los cálculos de BB_ necesarios en el segundo if, siempre que se haya cumplido el primer if, y si . else es bastante eficaz, mientras que usted sólo tiene if
Estoy de acuerdo en que el código puede aumentar en número de líneas y ser menos legible, pero el rendimiento aumentará.
Gracias, Igor, voy a ver qué pasa. Eso no es lo que tenía en mente... Recuerdo que en los primeros tiempos de la informatización, en 1991-94, no recuerdo exactamente... Hacía programación en lenguaje ensamblador para ZX Spectrum... que era terriblemente lento y estaba limitado a 64Kb de memoria... Así que había una orden para que el procesador trabajara con el área de memoria de la pantalla para que salieran rápidamente 16386Kb a esa área. El comando CPU documentado fue el más rápido de todos, trabajando con un gran conjunto de datos. No hay mucho que podamos hacer al respecto, pero... encontraron una manera de cuadruplicar la velocidad de salida. Había comandos para trabajar con la pila y se ejecutaban mucho más rápido. Así es como lo hicieron: movieron la pila a una zona no utilizada de la memoria que va justo después de la pantalla, llenaron esa zona con datos gráficos y luego, habiendo movido la pila a la pantalla, saltaron rápidamente la pantalla preparada en la memoria a la zona de la pantalla con un comando que llenó la pila... Sólo un milagro para aquellos tiempos, pero para Spectrum fue mágico...
Aquí también me interesan las formas de trabajo no convencionales... Ya sabes, como ver qué comandos se ejecutan en cuántos ciclos de reloj y construir algo similar... ¿Qué podría sustituir a los comandos de comparación lógica, tal vez la resta o algo más en la misma vena....
Y aquí me interesan las formas de trabajo no estándar... Como buscar qué comandos se ejecutan en cuántos ciclos de reloj y construir algo similar... ¿Qué podría sustituir a los comandos de comparación lógica, tal vez la resta o algo así....
creo que no lo encontrarás en mql - los principios de mql son muy similares a los de java con sintaxis C, prueba a ver qué es más rápido ejecutar case o if, recuerdo cuando vi en turbopascal que if es más rápido
¿Sabes si se puede enviar un comando para desactivar el EA desde el script?
Puedes hacerlo. Yo, por ejemplo, controlo mi EA con scripts que establecen variables globales a un determinado estado. Los estados de estas variables
se analizan en el Asesor Experto y se ejecutan los comandos necesarios.