[¡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 469

 
chief2000 >>:

Идея простая - каждый раз когда выполняется условие

время для High[i+2] сохраняется в переменную Time_Extreme_Sell.

Затем, в каждом(!) подобном случае, на расстоянии до 10 свечек после свечки со временем Time_Extreme_Sell необходимо нарисовать вертикальные линии.

Но я вижу что эти линии рисуются только в самом конце, для Time[0] и только если от Time[0] до Time_Extreme_Sell меньше 10 свечек.





¡Compruebe las condiciones no un principiante ))) pero perezoso =)) paso a paso!


¡las condiciones no se cumplen!


 
costy_ >>:

Проверяй условия не новичек же ))) но ленивый =)) поэтапно проверяй!


условия не выполняются!



Сидит чукча, рыбачит. Подплывает американская подводная лодка выходит капитан и спрашивает:
- Heloo! Куда поплыл русский подлодка?
Чукча указал куда-то вбок.
- Nort-West! - Скомандовал капитан и подлодка уплыла.
Тут же выныривает русская подлодка из неё выходит капитан:
- Куда американская подлодка поплыла?
Чукча:
- Норт вест.
- Не умничай, пальцем покажи!

:)

 
costy_ писал(а) >>

Supongo que no funciona en la M1.

Todo está bien aquí. En la propia ventana, el desplazamiento hacia atrás en el tiempo en cualquier marco temporal va en función de este parámetro. No lo tengo en el probador. Lo he comprobado visualmente y programáticamente, por ejemplo, al probar cualquier Asesor Experto con visualización en cualquier marco temporal - no hay desplazamiento hacia atrás (en realidad lo hay, pero por un pequeño número de barras hacia atrás).

La pregunta sigue siendo...

¿El probador no ve el historial? ¿Qué hago?

Mi probador no ve el historial descargado, el propio gráfico muestra todo para muchos años atrás (todas las opciones están llenas). Si miro, por ejemplo, 1000 barras atrás en el probador (cuando empiezo a probar un Asesor Experto), está vacío. La terminal es Alpari Demo.

Conozco una forma perversa de hacerlo: poner la fecha de prueba mucho antes y empezar a probar desde la fecha requerida en el Asesor Experto. ¿Qué estoy haciendo mal?

 
sak120 писал(а) >>

Todo está bien aquí. En la propia ventana, el desplazamiento hacia atrás en el tiempo en cualquier marco temporal va en función de este parámetro. No lo tengo en el probador. Lo he comprobado visualmente y programáticamente, por ejemplo, al probar cualquier Asesor Experto con visualización en cualquier marco temporal - no hay desplazamiento hacia atrás (en realidad lo hay, pero por un pequeño número de barras hacia atrás).

La pregunta sigue siendo...

¿El probador no ve el historial? ¿Qué debo hacer?

Mi probador no ve el historial descargado, el propio gráfico muestra todo para muchos años atrás (todas las opciones están llenas). Si miro, por ejemplo, 1000 barras atrás en el probador (cuando empiezo a probar un Asesor Experto), está vacío. La terminal es Alpari Demo.

Conozco una forma pervertida, es decir, establecer la fecha de prueba mucho antes y empezar a probar desde la fecha requerida en el Asesor Experto. ¿Qué estoy haciendo mal?

El historial limitado de 1000 bares está disponible en el probador

 
Vinin писал(а) >>

El probador dispone de un historial limitado de 1000 bares

>>Muchas gracias.

 
¡¡¡Señores programadores!!! Por favor, explícame, si no tengo ni idea, por qué se ejecuta el cuerpo del operador else, si (condición) es verdadera. Ya me he devanado los sesos...
if (PRICEASK==OrderOpenPrice())                   // Если цена PRICEASK равна цене открытия выбранного ордера...
   {KRYTASK=false;}                               // ...значит, ордер уже выставлен. Критерий для открытия - ЛОЖЬ.
   else
   {KRYTASK=true;}                                // ...значит, ордер еще не выставлен. Критерий для открытия - ИСТИНА.
Sobre el punto flotante. Decidí comprobar estos precios. He añadido la función Print() para comprobarlos. Luego añadí este código en la función:
Print (NormalizeDouble(PRICEASK,Digits))
Y también añadí el siguiente código:
string value=DoubleToStr(PRICEASK,Digits);string value1=DoubleToStr(OrderOpenPrice(),Digits);
Print ( value," ",  value1);
. Así que lo intenté y lo retorcí todo para entender y averiguar dónde está el error. En cualquier caso, los precios siguen siendo iguales entre sí. Pero a pesar de ello, {KRYTASK=true} sigue funcionando.
Menudo lío... Gracias de antemano.
 
Señores, aquí hay una pregunta:

En el probador, hay una cosa así:
nMAValue = iMA (Symbol (), PERIOD_H1, 100, 0, MODE_SMA, PRICE_MEDIAN, 0); 
Print ("MA value: ", DoubleToStr (nMAValue, 4));

El registro muestra "0.0000".

Pero en el terminal, en tiempo real, da valores correctos.

¿Cómo se puede solucionar esto?
 
iliaalyoshin писал(а) >>
¡¡¡Señores programadores!!! Por favor, explíqueme, si no tengo ni idea, por qué se ejecuta el cuerpo del operador else, si (condición) es verdadera. Ya me he devanado los sesos... Sobre el punto flotante. Decidí comprobar estos precios. He añadido la función Print() para comprobarlos. Luego añadí este código a la función:
Y luego también añadí este código: Así que retorcí y retorcí de diferentes maneras para entender y ver dónde estaba el error. En cualquier caso, los precios siguen siendo iguales entre sí. Pero a pesar de esto, todo lo mismo {KRYTASK=true} se ejecuta.
Qué lío... Gracias de antemano.


Los precios no son iguales entre sí. Puedes utilizar diferentes trucos para comparar los números reales (para la igualdad). Pero no puedes hacerlo directamente.

 
Vinin >>:


Цены не равны друг другу. Для сравнения действительных числе (на равенство) можно использовать разные приемы. Но напрямую нельзя.


¿Diferentes técnicas? ¿Por ejemplo?
 
iliaalyoshin писал(а) >>


¿Diferentes trucos? ¿Por ejemplo?


https://www.mql5.com/ru/articles/1561