[ARQUIVO] Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 3. - página 127

 
VOLDEMAR:
Quando você o executa na vida real " step*point se tornará > perda atual, então o lucro virá até você" você verá seu lucro se tornar um fixo menos .... Por causa do trabalho do corretor ... Eu não fixei o take profit para nada, já foi verificado ..........
Você é um estranho. Meu posto é outra resposta à sua pergunta. É apenas outra maneira. Mas é mais compreensível visualmente.
 
Você poderia dizer a um programador novato como selecionar o último negócio fechado usando a função OrderSelect? Eu tentei da seguinte maneira: OrderSelect(1,SELECT_BY_POS,MODE_HISTORY), mas aparentemente nenhuma ordem é selecionada desta maneira...
 
alguém, por favor, implemente esta idéia do assessor:

Idéia número 5 TS - Padrão próprio ( Amostra ). Também há ali um desenho. O TS e os critérios comerciais são simples e

Não vai levar muito tempo para um bom programador. Alguém não quer ver os resultados?
 
Favor informar se você sabe como fazer um teste de alavancagem 1:1 ?
 

Tente abrir uma conta demo com alavancagem 1:1. E testá-lo.

Será que vai funcionar?


 
Moslift:
Você poderia dizer a um programador novato como selecionar o último negócio fechado usando a função OrderSelect? Eu tentei fazer desta forma: OrderSelect(1,SELECT_BY_POS,MODE_HISTORY), mas aparentemente nenhuma ordem é selecionada desta forma...


Dê uma olhada aqui: https://www.mql5.com/ru/forum/131859

-página 4
GetTypeLastClosePos - Retorna o tipo da última posição fechada ou -1
GetTypeLastOpenPos - Retorna o tipo da última posição aberta ou -1
isCloseLastPosByStop - Retorna a bandeira da última posição fechada por Stop
isCloseLastPosByTake - Retorna a bandeira para fechar a última posição por Take.
isLossLastPos - Retorna a bandeira de perda da última posição.
isTradeToDay - Retorna hoje a bandeira de negociação
NumberOfBarCloseLastPos - Retorna o número de fechamento da última posição ou -1.
NumberOfBarOpenLastPos - Retorna o número da barra da última posição aberta ou -1.
NumberOfLossPosToday - Retorna o número de posições perdidas fechadas hoje.
PriceCloseLastPos - Retorna o preço de fechamento da última posição fechada.

 
Moslift:
Você pode aconselhar um programador novato, como selecionar o último pedido fechado usando a função OrderSelect? Eu tentei fazer desta forma: OrderSelect(1,SELECT_BY_POS,MODE_HISTORY), mas aparentemente nenhuma ordem é selecionada desta forma...

Tente desta forma:

   int      i, j;
   datetime t;
   for (i=0; i<OrdersHistoryTotal(); i++) {           // Цикл по закрытым ордерам терминала
      if (OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)) {// Если выбран ордер...
         if (OrderType()>1)               continue;   // ... если его тип не Buy и не Sell, переходим к следующему...
         if (OrderSymbol()!=Symbol())     continue;   // ... если его символ не соответствует символу графика - к следующему...
         if (OrderMagicNumber()!=Magic)   continue;   // ... если его магик не соответствует магику советника (в переменной Magic) - к следующему
         if (OrderCloseTime()>t) {                    // ... если время его закрытия больше предыдущего
            t=OrderCloseTime();                       // ... сохраним новое наибольшее время закрытия, ...
            j=i;                                      // ... сохраним индекс ордера в массиве закрытых ордеров
            }                   
         }
      }
   if (OrderSelect(j,SELECT_BY_POS,MODE_HISTORY))     // На этом этапе j содержит индекс последнего закрытого ордера
      Print("Выбран последний закрытый ордер с тикетом ",OrderTicket());

Note que somente a Compra ou Venda é verificada no laço. Esperamos que você possa fazer uma seleção de outros tipos de pedidos com base nisso

ZS... Estava escrevendo em minhas mãos e poderia ter perdido um erro em algum lugar...

 

Por favor, diga-me por que esta função não funciona e como fazê-la funcionar?


nomer_sdelki=OrderSend(Symbol(),OP_SELL,1,Bid,3, Bid-10*Point,Ask+10*Point, "My order #"+1,16384,0,Green);

------------------------------------------------------------------------------------------------------------------------

E é assim que funciona!!!

nomer_sdelki=OrderSend(Symbol(),OP_SELL,koefficent,Bid,3,0,0, "My order #"+1,16384,0,Green);

ou seja, quando não há paradas, funciona.

------------------------------------------------------------------------------------------------------------------------------

Esta função também não funciona, como posso consertá-la?

OrderClose(nomer_sdelki,koefficent,Bid,3,Red);


-----------------------------------------------------------------------------------------------------------------------------------



 
leonid553:

Tente abrir uma conta demo com alavancagem 1:1. E testá-lo.

Será que vai funcionar?


Senx ( Obrigado ) :)))
 

É um milagre...

Havia uma mensagem e nenhuma mensagem...

Eu respondo: É isto que é preciso?

// ----------------- SchBuyLs() ---------------------------------------------
//  Функция возвращает суммарный лот Бай-ордеров 
//----------------------------------------------
double SchBuyLs_b() {
   double SchBuyLs=0;
   int i;
   string SMB=Symbol();
   for (i=OrdersTotal()-1; i>=0; i--) {                  //Начало цикла
      if (!OrderSelect(i, SELECT_BY_POS)) WriteError(i);
      else  {                                            //начало работы с выбранным ордером
         if (OrderSymbol()!=SMB)    continue;
         if(OrderType()==OP_BUY)    SchBuyLs+=OrderLots();
         }                                               //конец работы с выбранным ордером
      }                                                  //Конец цикла
   return(SchBuyLs);                                     // При ошибке выбора ордера функция вернёт ноль
}
// ----------------------------------------------------------------------------
Razão: