O que há de errado com isso? - página 3

 

Por favor, me diga porque este script não abre negócios e mostra erro 0, ou seja, nenhum erro, mas não abre negócios.

extern int MagicNumber = 10001;
extern double Lots = 0.1;
extern double StopLoss = 50;
extern double TakeProfit = 50;
extern int TrailingStop = 25;
extern int Slippage = 3;
//+------------------------------------------------------------------+
//    expert start function
//+------------------------------------------------------------------+
int start()
{
  double MyPoint=Point;
  if(Digits==3 || Digits==5) MyPoint=Point*10;
  
  double StochMain = iStochastic(NULL,0,7,10,4,MODE_LWMA,1,MODE_MAIN,0);
  double StochSignal = iStochastic(NULL,0,7,10,4,MODE_LWMA,1,MODE_SIGNAL,0);
  double MaSi = iMA(NULL,0,100,0,MODE_EMA,PRICE_CLOSE,0);
  
  if( TotalOrdersCount()==0 ) 
  {
     if((StochMain > StochSignal)&&(Close[1] > MaSi)) // Here is your open buy rule
     {
     OrderSend(Symbol(),OP_BUY,Lots,Ask,Slippage,Ask+StopLoss*MyPoint,Ask+TakeProfit*MyPoint,"Открыта сделка на покупку!!",MagicNumber,0,Yellow);
     }
     else
     {
        if(GetLastError() != 0)
        Alert("Ошибка ",GetLastError());
     }
  }
  
 
Acho que sua perda de estoque é maior que o preço de abertura
 
Certo, e não há erro.
 

Diga-me como decifrar isto, eu não entendo como funciona esta peça

    for(int cnt=0;cnt<OrdersTotal();cnt++)
     {
      OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);

Então, primeiro definimos a variável cnt como 0

Então, se o número de pedidos exceder 0, o OrderSelect é acionado.

Mas o que é responsável por essa mesma variável cnt com valor 0?

 OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
 
Tente apenas ler sobre a função e isso ficará claro em pouco tempo.
 

Não ficou claro nada, por que exatamente 0? As ordens são numeradas a partir do zero ou o quê?

E há mais.

OrderType()<=OP_SELL

Como sei se isto é menor ou igual a uma ordem de venda? Qual deles é menor e qual é maior?

 
sss2019:

Não ficou nada claro, por que exatamente 0? As ordens são numeradas a partir do zero ou o quê?

Sim, do zero. como tudo o resto.

E há mais.

Como sei se isto é menor ou igual a uma ordem de venda? Como sabemos qual é o menor e qual é o maior?


porque OP_SELL é constante=1
 

Então

OP_BUY - 0
OP_SELL - 1
OP_BUYLIMIT - 2
OP_BUYSTOP - 3
OP_SELLLIMIT - 4
OP_SELLSTOP - 5

é assim que funciona?

 
sss2019:

Então

OP_BUY - 0
OP_SELL - 1
OP_BUYLIMIT - 2
OP_BUYSTOP - 3
OP_SELLLIMIT - 4
OP_SELLSTOP - 5

é assim que funciona?


Certo. É verdade, há outro valor que é igual a 6.
 
O que mais vai ser?
Razão: