¡Golpe! - página 8

 

Ya que empecé aquí, continuaré aquí.... Me está costando mucho trabajo. Escribí un EA, pero no puedo entender por qué no pone todo completamente. La estrategia es, sin duda, poco rentable, pero me pregunto por qué el cambio no funciona hasta el final diría....

Abre posiciones pero no siempre tiene suerte, diría yo. Cualquiera puede ayudar????

int start()
  {
int TotalOrders, TotalOrders1;
int i,ticket,ticket1;
//if (b!=Bars){
b=Bars;
support=NormalizeDouble(iCustom(NULL, 0, "TDSEQUENTA v0000",set,up,zukko1,TT,0,0),5);
resist=NormalizeDouble(iCustom(NULL, 0, "TDSEQUENTA v0000",set,up,zukko1,TT,1,0),5);


if ((Last_Close_Loss()>0)&&(Prezent_Order()==false)){
               if (MathAbs(Last_Close_Loss())==resist+step*Point)OrderSend(Symbol(),OP_BUYSTOP,Lot,resist+step*Point,3,resist-step*Point,Ask+TakeProfit*Point);  
               if (MathAbs(Last_Close_Loss())==support+step*Point)OrderSend(Symbol(),OP_BUYSTOP,Lot,support+step*Point,3,support-step*Point,resist-step*Point); 

}
if ((Last_Close_Loss()<0)&&(Prezent_Order()==false)){
               if (MathAbs(Last_Close_Loss())==resist-step*Point)OrderSend(Symbol(),OP_SELLSTOP,Lot,resist-step*Point,3,resist+step*Point,support-step*Point);  
               if (MathAbs(Last_Close_Loss())==support-step*Point)OrderSend(Symbol(),OP_SELLSTOP,Lot,support-step*Point,3,support+step*Point,Ask-TakeProfit*Point); 
}



 if ((support!=support1)||(resist!=resist1)){
            seljak=true;
            bajak=true;
        TotalOrders=OrdersTotal();
        for (i=0; i<=TotalOrders; i++){
                 if (OrderSelect(0,SELECT_BY_POS)==true){
                    if (OrderType()==OP_BUY) OrderClose(OrderTicket(),OrderLots(),Bid,5,Red);
                    if (OrderType()==OP_SELL) OrderClose(OrderTicket(),OrderLots(),Ask,5,Red);
                    if (OrderType()==OP_SELLSTOP) OrderDelete(OrderTicket(),Green);
                    if (OrderType()==OP_BUYSTOP) OrderDelete(OrderTicket(),Green);
                    if (OrderType()==OP_SELLLIMIT) OrderDelete(OrderTicket(),Green);
                    if (OrderType()==OP_BUYLIMIT) OrderDelete(OrderTicket(),Green);
                 
                 }
        }
                      
}  
if (support!=support1){
         if (support<resist){
 
            ticket=OrderSend(Symbol(),OP_SELLSTOP,Lot,support-step*Point,3,support+step*Point,Ask-TakeProfit*Point);
            ticket1=OrderSend(Symbol(),OP_BUYLIMIT,Lot,support+step*Point,3,support-step*Point,resist-step*Point); 

            ticket=OrderSend(Symbol(),OP_SELLLIMIT,Lot,resist-step*Point,3,resist+step*Point,support+step*Point);
            ticket1=OrderSend(Symbol(),OP_BUYSTOP,Lot,resist+step*Point,3,resist-step*Point,Ask+TakeProfit*Point); 
            if (ticket<0) return(0); 
            if (ticket1<0) return(0);          
         

}
}
if (resist!=resist1){
         if (support<resist){
       
            ticket=OrderSend(Symbol(),OP_SELLSTOP,Lot,support-step*Point,3,support+step*Point,Ask-TakeProfit*Point);
            ticket1=OrderSend(Symbol(),OP_BUYLIMIT,Lot,support+step*Point,3,support-step*Point,resist-step*Point); 

            ticket=OrderSend(Symbol(),OP_SELLLIMIT,Lot,resist-step*Point,3,resist+step*Point,support+step*Point);
            ticket1=OrderSend(Symbol(),OP_BUYSTOP,Lot,resist+step*Point,3,resist-step*Point,Ask+TakeProfit*Point); 
            if (ticket<0) return(0); 
            if (ticket1<0) return(0);          
         
}
}




resist1=resist;
support1=support;


//}
   
  return(0);
  }
 //Проверка лосей 
double Last_Close_Loss(){
double Last_profit=0, Last_close_lots=0,Last_Type=0,Last_Open_Price=0 ; int time=0; 
//---------
   for (int i=OrdersHistoryTotal();i>=1;i--){
         if(OrderSelect(i-1, SELECT_BY_POS, MODE_HISTORY))
         if(OrderSymbol ()!= Symbol())continue;
         if(OrderType() <=1 )
           {if(OrderCloseTime()>time){time=OrderCloseTime();
                                      Last_profit=OrderProfit()+OrderSwap();
                                      Last_Type=OrderType();
                                      Last_Open_Price=OrderOpenPrice();
                                      }
           }
        }    
if(Last_profit<0){
   if (Last_Type==OP_SELL) Last_Open_Price=Last_Open_Price*(-1);
}
     return(Last_Open_Price);
   
} 
//Проверка наличия отложенника по цене.   
bool Prezent_Order(){
bool Chek=false; 
int TotalOrders,i;
        TotalOrders=OrdersTotal();
        for (i=0; i<=TotalOrders; i++){
                 if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==true){
                  if (OrderOpenPrice()==MathAbs(Last_Close_Loss())) Chek=true;   
                 }
        }

 return(Chek);  
} 

Es decir, de alguna manera no funciona hasta el final y en algunos casos da un error 130..... Como paradas equivocadas, aunque he comprobado todo... Parece que es hasta....

¡¡¡¡¡PLEASE!!!!! Ayuda o pista para saber dónde está el error????

resultado comercial en realidad

El barrido pone las órdenes en una sola dirección, pero quiero que las golpee en una dirección. No puedo decidir qué hacer con él :(((((

 
nikelodeon:

Ya que empecé aquí, continuaré aquí.... Me está costando mucho trabajo. Escribí un EA, pero no puedo entender por qué no pone todo completamente. La estrategia es, sin duda, poco rentable, pero me pregunto por qué el cambio no funciona hasta el final diría....

Abre posiciones pero no siempre tiene suerte, diría yo. Cualquiera puede ayudar????

Es decir, de alguna manera no funciona hasta el final y en algunos casos da un error 130..... Como paradas equivocadas, aunque he comprobado todo... Parece que es hasta....

¡¡¡¡¡PLEASE!!!!! Ayuda o pista para saber dónde está el error????

resultado comercial en realidad

El barrido pone las órdenes en una sola dirección, pero quiero que las golpee en una dirección. No puedo decidir qué hacer con él :(((((

Hola. Te aconsejo que lleves un control de las órdenes de principio a fin, cada nivel tiene su propio comentario de orden, y asegúrate de comprobar la sangría de precios en el stop loss antes de colocar las órdenes. El algoritmo se puede simplificar - sólo 4 órdenes, una puede estar en el mercado. Poner un stop en los niveles - se abre automáticamente en el stop. Miramos todas las órdenes - si una toma de mercado se ha disparado fuera del canal, eliminamos las órdenes pendientes. Entiendo que estamos trabajando desde dentro del canal.
 
FION:
Hola. Te aconsejo que lleves un control de las órdenes de principio a fin, cada nivel tiene su propio comentario de orden, y asegúrate de comprobar la sangría de precios en el stop loss antes de colocar las órdenes. El algoritmo se puede simplificar - sólo 4 órdenes, una puede estar en el mercado. Poner un stop en los niveles - se abre automáticamente en el stop. Miramos todas las órdenes - si una toma de mercado se ha disparado fuera del canal, eliminamos las órdenes pendientes. Entiendo que estamos trabajando desde dentro del canal.

No, estamos trabajando desde la línea .....
 
No está muy claro dónde está el error. Parece que todo está bien....
 
nikelodeon:
No está muy claro dónde está el error. Esto parece ser correcto....
Hay que tener en cuenta que cuando se establece un límite de compra, la condición debe cumplirse siempre: su precio de apertura debe ser siempre inferior al precio actual del mercado y viceversa para el límite de venta. Su precio está vinculado al indicador y no al precio actual del mercado, por lo que la condición anterior puede no cumplirse siempre.
 


Al fin y al cabo, ya lo tengo montado. :)

Chicos, ¿podéis ayudarme

a la lechuza con los parámetros de multiplicación que se pueden establecer?

¡por favor!

Archivos adjuntos:
vlad_2.mq4  12 kb
 
vladds, ¿también cobrarás 10.000 dólares en una cuenta real por este EA?
 
Bicus:
vladds, ¿también necesita 10 000 dólares para este EA en una cuenta real?

todavía está crudo.

la prueba en sí se realizó por la noche a las 3, la prueba terminó a las 10:30 :)

en cuanto al EA, necesita ser afinado y conectado en general, acabo de escribirlo como un corredor de oro

 
vladds:


Al fin y al cabo, ya lo tengo montado. :)


Es bastante bueno. No te olvides de compartir la configuración con otros habitantes del pueblo.

 
4x-online:

Lo has preparado muy bien. No te olvides de compartir la configuración con otros habitantes del pueblo.


¡el último búho publicado está montado!