Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 6. - pagina 76

 
lottamer:


DC è a cinque cifre...

Cosa significa SENZA DoubleToStr(YourPrice,5)? Ho DoubleToStr(YourPrice,5) da nessuna parte

Se mettete semplicemente una variabile doppia da qualche parte in Print o Alert (Print(doubleVariable)), saranno stampate solo quattro cifre decimali; se mettete Print(DoubleToStr(doubleVariable,N)) - otterrete N cifre decimali.
 
Domanda ai moderatori - molto spesso il sito mi rimanda indietro per la ri-autorizzazione. Quando provo ad accedere, viene visualizzato il messaggio "Il tuo accesso è temporaneamente limitato o negato". Poi, dopo qualche ora, l'accesso viene ripristinato. Quale potrebbe essere il problema?
 
Grazie a tutti per i consigli, ma logicamente, non c'è differenza tra le due opzioni...
  • per (int i=1; i<=OrdiniTotali(); i++)
  • for (int i=OrdersTotal()-1; i>=0; i--)
O mi sbaglio? A proposito, questo non ha aiutato....


La cosa strana è che EA cancella completamente tutti gli ordini in questa condizione:
  • per (int i=0; i<=OrdiniTotali(); i++)
  • per (int i=OrdiniTotali(); i>=0; i--)
Qualcuno può capire perché?

 
yosuf:
Domanda ai moderatori - molto spesso il sito mi rimanda indietro per la ri-autorizzazione. Quando provo ad accedere, viene visualizzato il messaggio "Il tuo accesso è temporaneamente limitato o negato". Poi, dopo qualche ora, l'accesso viene ripristinato. Quale potrebbe essere il problema?
Universo omeostatico. I moderatori non possono influenzare l'autorizzazione. Solo vietarlo in modo permanente.
 
granit77:
Universo omeostatico. I moderatori non possono influire sull'autorizzazione. Solo bandito in modo permanente.
Cosa fare ora? A chi rivolgersi?
 
yosuf:
Cosa fare ora? A chi rivolgersi?

Al moderatore dell'universo.
 
yosuf:
Domanda ai moderatori - molto spesso il sito mi rimanda indietro per la ri-autorizzazione. Quando provo ad accedere, viene visualizzato il messaggio "Il tuo accesso è temporaneamente limitato o negato". Poi, dopo qualche ora, l'accesso viene ripristinato. Quale potrebbe essere il problema?

Sei stato trollato))) Sei un individuo carismatico))))
 

Saluti.

Mi puoi dire come prendere in considerazione un incrocio di prezzi con una linea indicatrice?

l'indicatore ha tre linee: inferiore, centrale e superiore.

Ecco un esempio:

quando il prezzo ha attraversato la linea superiore, ho bisogno di fissare questo momento e usarlo dopo, quando il prezzo è sotto la linea superiore e sopra la linea di mezzo, e quando il prezzo è sotto la linea di mezzo, ho bisogno di resettare il risultato fissato. Non ho bisogno di ricordare il prezzo in cui si è verificato il crossover, ho solo bisogno di mettere un segno di spunta per indicare che il crossover si è verificato e poi cancellarlo.

LineUp //верхняя линия

LineS // средняя линия

LineDown // нижняя линия

Ask >  LineUp // фиксируем

Ask < LineS // сбрасываем

и так же с нижней линией

Bid < LineDown // фиксируем

Bid > LineS //  сбрасываем

Ho provato con True e false, non ha funzionato, non riesco a capire perché.

Ho provato questo:

double LineUp; //верхняя линия индикатора

double LineS; // средняя линия индикатора

double LineDown; // нижняя линия индикатора

bool FiksiruemUp = False;

 bool FiksiruemDown = False;

if ( Ask >  LineUp)  FiksiruemUp = True; // фиксируем

if (Ask < LineS) FiksiruemUp = False; // сбрасываем

// и так же с нижней линией

if (Bid < LineDown)  FiksiruemDown = True; // фиксируем

if (Bid > LineS)  FiksiruemDown = False; //  сбрасываем

 

// дальше в коде я к нему обращаюсь:

if ( FiksiruemUp == True) 

{

то нужно сделать это . . . . . . 

} 

e non funziona, perché no? Aiutatemi a capire.

 
Cari utenti del forum, per favore aiutatemi, non riesco a trovare un bug nel codice del mio EA, vale a dire, non può o non vuole chiudere le posizioni da indicatore, solo da tp o sl, qui, come mi sembra, parte del codice, che è associato a questo problema, molte grazie in anticipo
int start()
  {
   int
   Total,                           // Количество ордеров в окне 
   Tip,                          // Тип выбран. ордера (B=0,S=1)
   Ticket;                          // Номер ордера
   double
   FT1,                              // Значение 0 буффера Forex Trend
   FT2,                             // Значение 1 буффера Forex Trend
   TL1,                              // Значение 1 буффера Trend Lord
   TL2,                              // Значение 0 буффера Trend Lord                          
   FI,                               // Значен. Force Index текущее 
   Lot,                             // Колич. лотов в выбран.ордере
   Lts,                             // Колич. лотов в открыв.ордере
   Min_Lot,                         // Минимальное количество лотов
   Step,                            // Шаг изменения размера лота
   Free,                            // Текущие свободные средства
   One_Lot,                         // Стоимость одного лота
   Price,                           // Цена выбранного ордера
   SL,                              // SL выбранного ордера 
   TP;                              // TP выбранного ордера
   bool
   Ans  =false,                     // Ответ сервера после закрытия
   Cls_B=false,                     // Критерий для закрытия  Buy
   Cls_S=false,                     // Критерий для закрытия  Sell
   Opn_B=false,                     // Критерий для открытия  Buy
   Opn_S=false;                     // Критерий для открытия  Sell
                                                        
   
//--------------------------------------------------------------- 3 --
   // Предварит.обработка
   if(Bars < Period_FI)                       // Недостаточно баров
     {
      Alert("Недостаточно баров в окне. Эксперт не работает.");
      return;                                   // Выход из start()
     }
   if(Work==false)                              // Критическая ошибка
     {
      Alert("Критическая ошибка. Эксперт не работает.");
      return;                                   // Выход из start()
     }
//--------------------------------------------------------------- 4 --
   // Учёт ордеров
   Symb=Symbol();                               // Название фин.инстр.
   Total=0;                                     // Количество ордеров
   for(int i=1; i<=OrdersTotal(); i++)          // Цикл перебора ордер
     {
      if (OrderSelect(i-1,SELECT_BY_POS)==true) // Если есть следующий
        {                                       // Анализ ордеров:
         if (OrderSymbol()!=Symb)continue;      // Не наш фин. инструм
         if (OrderType()>1)                     // Попался отложенный
           {   
            Alert("Обнаружен отложенный ордер. Эксперт не работает.");
            return;                             // Выход из start()
           }
         Total++;                               // Счётчик рыночн. орд
         if (Total>1)                           // Не более одного орд
           {
            Alert("Несколько рыночных ордеров. Эксперт не работает.");
            return;                             // Выход из start()
           }
         Ticket=OrderTicket();                  // Номер выбранн. орд.
         Tip   =OrderType();                    // Тип выбранного орд.
         Price =OrderOpenPrice();               // Цена выбранн. орд.
         SL    =OrderStopLoss();                // SL выбранного орд.
         TP    =OrderTakeProfit();              // TP выбранного орд.
         Lot   =OrderLots();                    // Количество лотов
        }
     }
//--------------------------------------------------------------- 5 --
   // Торговые критерии
                          
   TL1=iCustom(NULL, 0, "TrendLord", 1, 1);                          // trend lord синий
   TL2=iCustom(NULL, 0, "TrendLord", 0, 1);                          // красный тренд лорд
   FI=iForce(NULL, 0, Period_FI,MODE_EMA,PRICE_CLOSE,0);            // FI
   FT1=iCustom(NULL, 0, "ForexTrend", 7, 50.6, 999999, 0, 1);                        // forex trend blue
   FT2=iCustom(NULL, 0, "ForexTrend", 7, 50.6, 999999, 1, 1);                        // forex trend red


   if (TL2 == EMPTY_VALUE && FT1 == 1 && FT2 == 0 && FI > 0)
   {
      Opn_B = true;
      
   
      
   }
   while (Opn_B == true)
   {
      if (FI <= 0)
      {
         Cls_B=true;
      }
  break;
   }      
      
   if (TL1 == EMPTY_VALUE && FT2 == 1 && FT1 == 0 && FI < 0)
   {
      Opn_S = true;
      
     
      
   }
   while (Opn_S == true)
   {
      if (FI >= 0)
      {
         Cls_S=true;
      }
   break;
   }    
//--------------------------------------------------------------- 6 --
   // Закрытие ордеров
   while(true)                                  // Цикл закрытия орд.
     {
      if (Tip==OP_BUY && Cls_B==true)                // Открыт ордер Buy..
        {                                       //и есть критерий закр
         Alert("Попытка закрыть Buy ",Ticket,". Ожидание ответа..");
         RefreshRates();                        // Обновление данных
         Ans=OrderClose(Ticket,Lot,Bid,2);      // Закрытие Buy
         if (Ans==true)                         // Получилось :)
           {
            Alert ("Закрыт ордер Buy ",Ticket);
            break;                              // Выход из цикла закр
           }
         if (Fun_Error(GetLastError())==1)      // Обработка ошибок
            continue;                           // Повторная попытка
         return;                                // Выход из start()
        }

      if (Tip==OP_SELL && Cls_S==true)                // Открыт ордер Sell..
        {                                       // и есть критерий закр
         Alert("Попытка закрыть Sell ",Ticket,". Ожидание ответа..");
         RefreshRates();                        // Обновление данных
         Ans=OrderClose(Ticket,Lot,Ask,2);      // Закрытие Sell
         if (Ans==true)                         // Получилось :)
           {
            Alert ("Закрыт ордер Sell ",Ticket);
            break;                              // Выход из цикла закр
           }
         if (Fun_Error(GetLastError())==1)      // Обработка ошибок
            continue;                           // Повторная попытка
         return;                                // Выход из start()
        }
      break;                                    // Выход из while
 
belck:

Saluti.

Mi puoi dire come prendere in considerazione un incrocio di prezzi con una linea indicatrice?

l'indicatore ha tre linee: inferiore, centrale e superiore.

Ecco un esempio:

quando il prezzo ha attraversato la linea superiore, ho bisogno di fissare questo momento e usarlo dopo, quando il prezzo è sotto la linea superiore e sopra la linea di mezzo, e quando il prezzo è sotto la linea di mezzo, ho bisogno di resettare il risultato fissato. Non ho bisogno di ricordare il prezzo in cui si è verificato il crossover, ho solo bisogno di mettere un segno di spunta per indicare che il crossover si è verificato e poi cancellarlo.

Ho provato con True e false, non ha funzionato, non riesco a capire perché.

Ho provato questo:

e non funziona, perché no? Aiutatemi a capire.


Non funziona, perché devi portare le variabili che vuoi impegnare a livello globale, cioè prima della funzione Start... Per esempio questi e così via.... " FiksiruemUp = True; // fix " e "iksiruemUp = False; // reset"
Se non si passa da un timeframe all'altro, dovrebbe funzionare...