[Arquivo!] Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por ela. Não poderia ir a lugar algum sem você - 2. - página 427

 
Bem, sim, estou olhando para o código letra por letra há horas.
 

Isto é incrível. Estou fazendo pedidos com o sethinker exatamente da mesma forma. Com o mesmo tudo - lote, preço de abertura, lucro. E o primeiro pedido não é definido pelo OrderType - é 0, embora o primeiro seja, de fato, um limite de compra. Mas as próximas ordens em aberto são determinadas pelo OrderType ( ) corretamente, neste código, eu as tenho 4 ou 5 e elas se comportam normalmente.

Eu também não posso apagar o primeiro pedido usando OrderDelete(OrderTicket( )) Os próximos são apagados exatamente da mesma maneira, sem nenhum problema

 
Dimka-novitsek:

Isto é incrível. Estou fazendo pedidos com o sethinker exatamente da mesma forma. Com o mesmo tudo - lote, preço de abertura, lucro. E o primeiro pedido não é definido pelo OrderType - é 0, embora o primeiro seja, de fato, um limite de compra. Mas as próximas ordens em aberto são determinadas pelo OrderType ( ) corretamente, neste código, eu as tenho 4 ou 5 e elas se comportam normalmente.

Eu também não posso apagar o primeiro pedido usando OrderDelete(OrderTicket( )) Os subseqüentes assim mesmo, o pedido é excluído corretamente.


Parece que os médiuns estão de férias. Devemos mostrar-lhe o código completo.

Embora, considerando o que já foi postado antes, existam muitos erros

 
Não tenho um erro no código lógico. Para onde eu devo ir? Isto é algum tipo de nidachet por parte dos fabricantes da linguagem ou da plataforma?
 
//+------------------------------------------------------------------+
//|                                                      показзз.mq4 |
//|                      Copyright © 2011, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2011, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net"
extern double stoploss=0; extern double takeprofit=20;extern int otstup=20; extern datetime expiration=0;
//+------------------------------------------------------------------+
//| expert initialization function                                   |
//+------------------------------------------------------------------+
int init()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| expert deinitialization function                                 |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return(0);
  }
  
  int tiket,tikett;double volume=0.1;int i=0,R1=0,R2=0,A=1 ;double price; int stsBUY;int stsSELL;double Price;int C=0;int GH;
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
//----
   if (GH<10){
//----
   double price=(Ask+Bid)/2; 
   
    Alert ("OrdersTotal()",OrdersTotal());
       
       if(C==0){ Price = price ;  C=1;}
   //----    
       
       tiket= OrderSend( Symbol(), OP_BUYSTOP,  volume*A, Price +otstup*Point, Point* 3, R1, Price+takeprofit*Point+otstup*Point, "OP_BUYSTOP", 1000,  expiration, Red); 
   Alert ("OP_BUYSTOP", GetLastError( )); 
   
   for(int i=OrdersTotal();i>0;i--){Alert ("i", i);OrderSelect(i,SELECT_BY_POS );Alert ("OrderType( )OP_BUYSTOP", OrderType( ));
   OrderDelete(OrderTicket( )) ; Alert ("OrderDelete-vseOP_BUYSTOP",  GetLastError( ) );}
              
//----
  tikett= OrderSend( Symbol(), OP_SELLSTOP,  volume*A, Price -otstup*Point, Point* 3,R2, Price-takeprofit*Point-otstup*Point, "OP_SELLSTOP" , 2000,  expiration,C'0,128,255' );
    Alert ("OP_SELLSTOP", GetLastError( )); 
    for( i=OrdersTotal();i>0;i--){Alert ("i", i);OrderSelect(i,SELECT_BY_POS );Alert ("OrderType( )OP_SELLSTOP", OrderType( ));
     OrderDelete(OrderTicket( )) ; Alert ("OrderDelete-vseOP_SELLSTOP",  GetLastError( ) );}
//----
 
   //tiket= OrderSend( Symbol(), OP_BUY,  volume*A, Bid, Point* 3, R1, Price+takeprofit*Point+otstup*Point, "OP_BUY", 1000,  expiration, Red); 
   //Alert ("OP_BUY", GetLastError( ));
   //for( i=OrdersTotal();i>0;i--){Alert ("i", i);OrderSelect(i,SELECT_BY_POS );Alert ("OrderType( )OP_BUY", OrderType( ));              
   //OrderClose( OrderTicket( ), OrderLots( ), OrderClosePrice( ) , 0, CLR_NONE);Alert ("OrderCloseOP_BUY",  GetLastError( ) ); }
    
//----
    //tikett= OrderSend( Symbol(), OP_SELL,  volume*A, Ask, Point* 3,R2, Price-takeprofit*Point-otstup*Point, "OP_SELLSTOP" , 2000,  expiration,C'0,128,255' );
    //Alert ("OP_SELL", GetLastError( )); 
    //for( i=OrdersTotal();i>0;i--){Alert ("i", i);OrderSelect(i,SELECT_BY_POS );Alert ("OrderType( )OP_SELL", OrderType( ));
    //OrderClose( OrderTicket( ), OrderLots( ), OrderClosePrice( ) , 0, CLR_NONE);Alert ("OrderCloseOP_SELL",  GetLastError( ) ); } 
    GH++;
    
                         }

Sim, sim, aqui.

No chamado showroom, os pedidos são simplesmente colocados e imediatamente eliminados.

 
Começou quando o assessor de avalanche começou a fazer três pedidos em vez de dois
 
Dimka-novitsek:
Começou quando o assessor de avalanche começou a fazer três pedidos em vez de dois

Que bagunça. A EA não conseguiu que a ordem fosse apagada. O que você põe dentro, você recebe.
 
abolk:

https://docs.mql4.com/ru/basis/types/datetime

bool ObjectCreate( nome da string, tipo int, janela int, datatime1, preço duplo1, datatime2=0, preço duplo2=0, datatime3=0, preço duplo3=0)

Eu o fiz:
ObjectCreate(Up,OBJ_TREND,0,iTime( NULL, PERÍODO_D1, 0),UpPrice,(iTime( NULL, PERÍODO_D1, 0)+86399),UpPrice); //resignar linhas
ObjectSet(Up,OBJPROP_COLOR,DeepPink);

Eu quero traçar uma linha até o final do dia, mas ela é infinita por alguma razão ?

 
Stells:

Eu o fiz:
ObjectCreate(Up,OBJ_TREND,0,iTime( NULL, PERÍODO_D1, 0),UpPrice,(iTime( NULL, PERÍODO_D1, 0)+86399),UpPrice); //resignar linhas
ObjectSet(Up,OBJPROP_COLOR,DeepPink);

Eu quero que a linha seja traçada até o final do dia atual, mas ela é infinita por alguma razão ?

ObjectSet(Up,OBJPROP_RAY,false);
 
Vinin:

Que bagunça. Uma das ordens deve ser apagada imediatamente. O que você põe dentro, você recebe.


Sim, é apenas um cheque para ver como funciona, tudo isso não está claro. A primeira coisa que faço é colocar um pedido de bylimit pendente, 20 pips acima do preço. Em seguida, eu o verifico imediatamente com OrderType,

e acontece que não é zero. É zero!!!!. Como pode ser zero, é um bylimit!!! Além disso, também não é apagado, diz algum tipo de erro. Além disso, todas as ordens subseqüentes são corrigidas como 4 ou 5, são apagadas normalmente, comportam-se normalmente.

Além disso, mesmo as ordens abertas acima da primeira se comportam normalmente, com o mesmo lote, localização, em suma, tudo em um! Todos, exceto o primeiro.

Razão: