[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 58

 
artmedia70:

N'avez-vous pas peur de vous laisser entraîner dans des demandes fréquentes ? Après tout, toutes les 15-30 secondes, vous devrez soit ouvrir une nouvelle position en plus de celle que vous avez déjà, soit supprimer celle que vous avez déjà.

Vous ne pourrez pas modifier le volume d'une position ouverte. Vous devrez donc le diviser en plusieurs positions.

Je suis intéressé par l'EA elle-même. Oui, et le volume des échanges déjà ouverts peut être augmenté par simple ajout et diminué par verrouillage partiel.
 
sergeev:

Caractéristiques de l'EA


17
darsey 08.08.2011 12:40
Bonjour. Est-il possible de programmer un EA dans mql4, afin qu'il ajuste le lot toutes les 15-30 secondes ?

Une façon possible d'ajuster le lot :
Ouvrez une nouvelle petite position toutes les 15-30 secondes, que vous fermez en bloc lorsque vous atteignez le bénéfice souhaité.
 
DhP:

Une façon possible d'ajuster le lot :
Ouvrez une nouvelle petite position toutes les 15-30 secondes, que vous fermez en bloc lorsque vous atteignez le bénéfice souhaité.
Merci. Je vais y réfléchir. En fait, j'ai deux séries avec une corrélation de 100% mais une volatilité différente. Je dois convertir une série en une autre. Je ne vois pas de moyen de sortir de la situation, car seule la correction du lot de fréquence intra-bar est possible. Des idées à ce sujet ? J'aimerais pouvoir faire du HFT à la maison :(
 

Bon après-midi.

Il existe un EA, il a la possibilité de sélectionner un ordre qui s'est ouvert avant que l'EA n'apparaisse sur le graphique. Et spécifiquement pour cette commande, il y a une condition de clôture. Disons que nous avons un ordre de vente et que le prix augmente sous condition, alors cet ordre sera fermé dès que l'EA sera affiché. Donc, tout se ferme bien et comme prévu. Mais nous n'arrivons pas à dépasser la condition où il y a un contrôle pour l'heure de fermeture. J'ai alerté sur cette fonction avant la condition et elle renvoie 0 ! Pourquoi ? Il est écrit dans la documentation que seul open et pending renvoie zéro. Pourquoi cette fonction renvoie-t-elle aussi zéro pour les fermés ? J'ai essayé de faire une pause d'une seconde après la fermeture (on ne sait jamais, peut-être que les données ne sont pas arrivées) mais cela renvoie toujours zéro. Voici le code de cette section :

if (tempWho == 0 && pos != -1)
{
    if (OrderSelect(pos, SELECT_BY_TICKET))
    {
        ...
        //Тут закрываются ордера
        ...
            
        if (OrderCloseTime() != 0)
        {
            ...
        }
    }
}

Merci de votre attention.

 

Les gars, veuillez m'indiquer comment passer deux commandes en même temps. Rien ne fonctionne.

// Si le maximum le plus proche est proche de l'entrée sur le marché, définir un ordre OP_SELLLIMIT
if (max<min)
{
1 - OrderSend(Symbol(),OP_SELLLIMIT,lot,cena_sell,3,sl_sell,tp_sell,"",1,0,Red) ;
Alert (GetLastError()) ; // Message d'erreur sur le placement de l'ordre
//order_opened = true ; // si l'ordre a été lancé, ne pas l'ouvrir
2 - OrderSend(Symbol(),OP_SELLLIMIT,lot_1,cena_sell_d_1,3,sl_sell,tp_sell_d_1,"",2,0,Red) ;
Alert (GetLastError()) ; // Message concernant l'erreur de définition de l'ordre

}
else // définir autrement l'ordre OP_BUYLIMIT
{

OrderSend(Symbol(),OP_BUYLIMIT,lot,cena_buy,3,sl_buy,tp_buy,"",5,0,Blue) ;
Alert (GetLastError()) ; // Message d'erreur sur le placement de l'ordre
//order_opened = true ; // si l'ordre a fonctionné, ne pas ouvrir à nouveau

Pour une raison quelconque, une seule commande s'ouvre :

1 - OrderSend(Symbol(),OP_SELLLIMIT,lot,cena_sell,3,sl_sell,tp_sell,"",1,0,Red) ;
Alert (GetLastError()) ; // Message d'erreur de paramétrage des ordres

 

à sergey_r :

Que dit-on dans les erreurs ? Plus précisément, quel est le code d'erreur?

 

si elle est définie :

int order = OrdersTotal(); // Vérifier si les ordres sont définis
if (order == 0)

il ouvre un ordre selllimit ou buylimit selon la condition et j'ai besoin de deux ordres selllimit ou d'un ordre buylimit.

 

à sergey_r :

Vous ne comprenez pas. Qu'est-ce qui est affiché dans l'alerte(GetLastError();)?

 
Erreur 130. Je l'ai eu, j'ai essayé de faire le même selllimit et tout a marché. Je vais chercher où le chien est enterré.
 

à sergey_r :

Comme vous l'avez dit plus haut, cela a à voir avec le deuxième StopLoser. Vous faites probablement un mauvais calcul. Vérifiez soigneusement le segment où il est calculé.

Juste au cas où, voici la transcription de l'erreur : https://docs.mql4.com/ru/trading/errors

Raison: