[Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate. Non posso andare da nessuna parte senza di te. - pagina 1081

 
dzhini:

Sembra che qualcosa non funzioni. PER FAVORE AIUTATEMI.

L'idea del test è la seguente: se la candela è maggiore di un certo valore, allora proibisci ulteriore trading.


Non riesco a capire cosa state cercando di ottenere. Per il tuo ultimo post, che hai cancellato, ho fatto uno script che visualizza tutti i dati sulla dimensione della candela e i parametri da controllare. Tutto funziona.

Mi è sembrata solo una strana logica - se la candela è rialzista, si proibisce l'acquisto, e se è ribassista, si proibisce la vendita... Ma sta alla tua logica...

//+------------------------------------------------------------------+
//|                                        Проверка высоты свечи.mq4 |
//|                             Copyright © 2010, Trishkin Artyom A. |
//|                                           support@goldsuccess.ru |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2010, Trishkin Artyom A."
#property link      "support@goldsuccess.ru"

//+------------------------------------------------------------------+
//| script program start function                                    |
//+------------------------------------------------------------------+
bool BuyOne =false;
bool SellOne=false;
int  CandleVolume=10;

int start()
  {
//----
   Alert ("Проверка дала результат = ",CheckVolume());
//----
   return(0);
  }
//+------------------------------------------------------------------+
int CheckVolume()                               // функция проверки высоты свечи
{
   double volume=High[1]-Low[1];                // проверка высоты свечи
   double signCandle=Open[1]-Close[1];          // проверка направления (положительное или отрицательное значение)
   double CVol=CandleVolume*Point;
   int    Res=0;

   BuyOne =true;
   SellOne=true;
   if (NormalizeDouble(CVol-volume,Digits)>=0) Res=1; // если свеча меньше, то всё ОК
   else {                                       // если свеча больше, то прверяем её направление
      if (signCandle<0) BuyOne =false;          // если значение меньше ноля (т.е. закрытие больше открытия), то блокируем покупки
      if (signCandle>0) SellOne=false;          // в противном случае блокируем продажи
      Res=-1;                                   // возвращаем отказ по сделке
      }
   Comment ("\n",
            "High[1] = ",High[1],"\n",
            "Low[1] = ",Low[1],"\n",
            "Высота свечи (High[1]-Low[1]) = ",volume,"\n",
            "Проверяемый размер свечи = ",CVol,"\n",
            "Open[1] = ",Open[1],"\n",
            "Close[1] = ",Close[1],"\n",
            "Open[1]-Close[1] = ",Open[1]-Close[1],"\n",
            "Направление свечи = ",signCandle,"\n",
            "BuyOne = ",BuyOne,"\n",
            "SellOne = ",SellOne,"\n"
            
            );
   return(Res);
}
 

Come implementare questa sezione di codice:

Controlliamo la barra zero (che non è ancora completamente formata) finché non è la prima (già completamente formata). Se la barra, che era zero, è ora la prima (invece di 0 ha un 1) - allora continua...

Pro, aiutami a rendere questa parte del codice!!!

 
Aiuta a trovare un consulente che prenda informazioni dalla storia ....
 
kolyango:

Come implementare un tale pezzo di codice:

Controlliamo la barra zero (che non è ancora completamente formata) finché non è la prima (già completamente formata). Se la barra zero è ora la prima (invece di 0 ha un 1) - allora continua...

Pro, aiutami a rendere questa parte del codice!!!

Controlla subito il primo. Perché controllare lo zero in attesa che sia il primo?
 
itum:
Aiuta a trovare un consulente che prenda informazioni dalla storia ....
Che tipo di informazioni? Sulla posizione delle stelle?
 
artmedia70:
Che tipo di informazioni? Sulla posizione delle stelle?
Su questo forum si è discusso più di una volta di un consulente che entra nella storia e prende informazioni (citazioni, ecc.) Quindi sto cercando qualcosa del genere!
 
itum:
Su questo forum si è discusso più di una volta di un Expert Advisor che va nella storia e prende informazioni (quotazioni, ecc.) Quindi sto cercando qualcosa del genere!
Forse è meglio decidere quali informazioni si vogliono ottenere dalla storia e scrivere il codice?
 
artmedia70:
Non sarebbe meglio decidere quali informazioni volete dalla storia e scrivere il codice?
Perché scrivere codice se hai già qualcosa di simile? Approssimativamente, ho bisogno di un EA che mostri ottimi risultati solo sul tester ..... !!
 
artmedia70:
Controlla subito il primo. Perché controllare lo zero aspettando che sia il primo?

Questo farà in modo che non ogni tick esegua ulteriormente tutto il codice, ma solo quando la barra zero è la prima...
 
kolyango:

Questo farà in modo che non ogni tick esegua ulteriormente tutto il codice, ma solo quando la barra zero è la prima...
bool Fun_New_Bar()                              // Ф-ия обнаружения ..
  {                                             // .. нового бара
   static datetime New_Time=0;                  // Время текущего бара
   bool New_Bar=false;                               // Нового бара нет
   if(New_Time!=Time[0])                        // Сравниваем время
     {
      New_Time=Time[0];                         // Теперь время такое
      New_Bar=true;                             // Поймался новый бар
     }
  }
Motivazione: