[ARCHIVE] Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 3. - page 216

 

Les gars !

comment limiter le nombre de transactions que l'EA peut effectuer en même temps ?

de toute urgence !

Merci !

if (OrdersTotal()>1 && OrdersTotal()<3) - ?
 

J'ai finalement compris que ObjectGet(nm,OBJPROP_TIME1) ignore l'heure de l'objet HLine.

Veuillez indiquer comment spécifier l'heure de la création de la ligne d'habitation pour le calcul.

iHighest(NULL,0,MODE_HIGH,shift,1 )de la création deHLine à l'heure actuelle ?

Lisez le fil de discussion sur les règles de tri des objets par nom, aucune idée ajoutée.

 
Operr:

J'ai finalement compris que ObjectGet(nm,OBJPROP_TIME1) ignore l'heure de l'objet HLine.

Veuillez indiquer comment spécifier le moment de la création de la ligne d'habitation pour le calcul.

iHighest(NULL,0,MODE_HIGH,shift,1 )de la création deHLine à l'heure actuelle ?



Utilisez les lignes de tendance horizontales :)
 
J'ai plusieurs EA qui négocient sur différents terminaux dans la même maison de courtage. De temps en temps, ils convergent. Alors, quel est le meilleur moyen de diluer ces EA ?
 
TANKER:
J'ai plusieurs EA qui négocient sur différents terminaux dans la même maison de courtage. De temps en temps, ils convergent. Alors, quel est le meilleur moyen de diluer ces EA ?

Le meilleur moyen de diluer les EA est la confiance.
 
tara:

Utilisez les lignes de tendance horizontales :)
Merci deux fois mon pote ! Je ne l'aurais pas compris moi-même, et maintenant je connais le nouveau type d'objet.
 

Aidez-moi à trouver la raison pour laquelle, lorsque j'écris des données dans un fichier exceL, les colonnes ne sont pas divisées, les en-têtes sont juste écrits dans une seule cellule.

De plus, le script ne crée qu'un en-tête de tableau, les valeurs de commande elles-mêmes sont absentes.

+------------------------------------------------------------------+
//| script program start function |
//+------------------------------------------------------------------+
int start()
{
//----
string FileName;
int Handle;
int ClOp; // разница между закрытием и открытием в пунктах
int spread;// спред по инструменту
int BarYear;// год
int BarDay; // день недели, 0 - восресенье

spread=MarketInfo(Symbol(),MODE_SPREAD); // запомним спред

// сформируем имя файла, например, EURUSD1440.csv
FileName=Symbol()+Period()+".csv";
//откроем файл с именем FileName (создадим указатель/handle на него)
Handle=FileOpen(FileName,FILE_WRITE | FILE_CSV,";");
if (Handle<1)
{
Print("Не удалось открыть файл, ошибка ",GetLastError());
return;
}

// запишем названия столбцов (создание шапки)
FileWrite(Handle,"Дата","Open","High","Low","Close","Close-Open в пунктах",
"Спред в пунктах","День недели","Год");


for (int index=Bars-1;index>=0;index--)
{
// пропустим бары до 2001 года
if (TimeYear(Time[index])<2001) continue;

// прервем (закончим) цикл, если 2005 год мы прошли весь
if (TimeYear(Time[index])>2005) break;

// Выведем High, Low, Open, Close для бара с индексом index
//Print(High[index]," ",Low[index]," ",Open[index]," "
//,Close[index]," бар=",index);
BarYear=TimeYear(Time[index]);
BarDay=TimeDayOfWeek(Time[index]);
ClOp=Close[index]/Point-Open[index]/Point;
FileWrite(Handle,TimeToStr(Time[index]),Open[index],High[index],Low[index],Close[index],ClOp,spread,BarDay,BarYear);
}


//----


//закроем файл (освободим указатель/handle, чтобы файл можно было
//открыть для редактирования другими программами)
if(Handle>0) FileClose(Handle);


return(0);// работа скрипта завершена
}

 
Suliena:

Aidez-moi à trouver la raison pour laquelle, lorsque j'écris des données dans un fichier exceL, les colonnes ne sont pas divisées, les en-têtes sont juste écrits dans une seule cellule.

En outre, le script ne crée qu'un en-tête de tableau, les valeurs de commande elles-mêmes sont manquantes.


Je ne l'ai pas essayé moi-même, je pense que des délimiteurs sont nécessaires. Espace, tabulation, barre oblique, etc. Si vous le faites via un fichier texte, les délimiteurs sont indispensables.

 
smartemiy:

Les gars !

comment limiter le nombre de transactions que l'EA peut effectuer en même temps ?

de toute urgence !

Merci !

NumberOrd est une fonction qui compte le nombre d'ordres ouverts.

if (NumberOrd()>3) return(0) ; - ceci sera l'entrée correcte pour limiter le nombre de trades ouverts en même temps ?

Je ne veux pas que ça ressemble à la photo !

Merci d'avance !

Bon échange !

 
smartemiy:

NumberOrd est une fonction qui compte le nombre d'ordres ouverts.

if (NumberOrd()>3) return(0) ; - cette entrée sera-t-elle correcte pour limiter le nombre de transactions entrées en même temps ?

Je ne veux pas que ça ressemble à la photo !

Merci d'avance !

Bon échange !

Raison: