[¡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 829
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
¡¡¡Podría ser útil!!! Intenta basarte en un precio: digamos que la oferta. El precio de apertura para OP_SELLSTOP será Bid , y para OP_BUYSTOP - Bid+87*Point (o lo que necesite).
Ahora un mago, los parámetros se ajustan a
Por favor, ayuda. Tal vez alguien sepa cómo implementar una función en el código, que compare el penúltimo valor del historial con el último (estamos hablando de posiciones cerradas) sin importar el valor (por ejemplo OrderCloseTime()), y si son diferentes (en este caso el penúltimo es menor que el último) - hacer un BLA-BLA-BLA. Si es posible, perfecciona mi código, o escribe el tuyo propio si lo tienes mal orientado.
double C_T_L_C_P() {
datetime t;
double r=0;
int i, k=OrdersHistoryTotal(), q=0;
if (q==0)
for (i=0; i<k; i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)==true) {
if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
if (t<OrderCloseTime()) {r=OrderCloseTime();}
}}}
return (r);}
¡¡¡GRACIAS DE ANTEMANO!!!
Ayuda para la comprobación.
Después de que aparezca la primera unidad en el ciclo, compruebe si esta unidad se mantendrá durante el tiempo t+t1 (compruebe cada delta de segundos). Si se mantiene, lo compramos, y si en algún momento no se mantiene, salimos del bucle. En otras palabras, la señal es válida, si se comprobó cada intervalo delta y siempre fue uno.
¿Estoy pensando correctamente?
Ayuda para la comprobación.
Después de que aparezca la primera unidad en el ciclo, compruebe si esta unidad se mantendrá durante el tiempo t+t1 (compruebe cada delta de segundos). Si se mantiene, entonces compramos, y si en algún momento no se mantiene, entonces salimos del bucle.
¿Estoy pensando correctamente?
El resultado es un bucle while infinito (t es siempre <t+t1, sólo si t1=0). En el bucle sign1 siempre =1
El resultado es un bucle while infinito (t es siempre <t+t1, sólo si t1=0). En el bucle sign1 siempre =1
¿Cómo solucionar el error?
¿Cómo corregir un error?
Para solucionar un error, hay que detallar el algoritmo (no el código, sino el algoritmo). Y luego superponer el código en el algoritmo
Para corregir el error, hay que detallar el algoritmo
Se recibe una señal binaria 0 o 1. Si se recibe un 1, entonces a partir de este momento empezamos a comprobar si se mantendrá durante 10 min (600 seg) comprobando cada 60 seg. Si los 10 minutos había uno - Comprar, y si al menos una vez no había nadie entonces terminar de comprobar y considerar que no hay ninguna señal de apertura.
Se recibe una señal binaria 0 o 1. Si se recibe un 1, a partir de este momento se empieza a comprobar si se mantendrá durante 10 minutos (600 segundos) comprobando cada 60 segundos. Si todos los 10 minutos fueron uno - Comprar, y si al menos una vez no fue uno entonces terminar de comprobar y considerar que no hay señal de apertura.
No está claro en el código cómo cambia la señal discreta sign0. En el código presentado la señal no cambia. Hay un intento infructuoso de trabajar con el cambio de t