[Archive] Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Je ne peux aller nulle part sans toi - 2. - page 362

 

Salutations à tous,

Pouvez-vous me dire s'il existe un script qui fixe automatiquement le SL après l'ouverture d'une transaction ?

J'ai beaucoup de transactions, je n'ai pas toujours le temps de le régler, parfois j'oublie.

 
markeliano:

Pouvez-vous me dire s'il existe un script qui fixe automatiquement le SL après l'ouverture d'une transaction ?

Le script standard modify.mq4 dans le terminal
 

Comment puis-je lire des fichiers CSV avec des volumes dans quel format ?

Vous en avez besoin pour vérifier les volumes réels et les indicateurs comme l'indicateur de Chaikin ou l'indicateur de flux monétaire sur une échelle horaire ou journalière.

un exemple d'exportation de devis au format http://www.finam.ru/analysis/export/default.asp

 
Rossi:

Comment lire les fichiers CSV avec des volumes ? dans quel format ? un script spécial est-il écrit ?

Opérations sur les fichiers par le biais de l'interface WinAPI à modifier selon vos besoins

Dossiers :
reader.mq4  4 kb
 

Où se trouve l'erreur ?

if (TERMINAL D'ACHAT)

si(OrderSymbol()==symbole)
{
RefreshRates() ; // rafraîchissement des prix
ticket=OrderSend(Symbol(),OP_BUY,Lot,Ask,3,Bid-StopLoss*Point,Bid+TakeProfit*Point, "Buy",1111,0,Green) ;
si(ticket>0)
{
if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("Ordre BUY ouvert : ",OrderOpenPrice()) ;
}
else Print("Erreur lors de l'ouverture de l'ordre BUY : ",GetLastError()) ;
retour(0) ;
}sélection
{
if(OrderSelect(0,SELECT_BY_POS,MODE_TRADES))
{
si(OrderType()==OP_SELL)
RefreshRates() ; // rafraîchissement des prix
OrderClose(NULL,Lot,Bid,3) ;
retour(0) ;
}

}

sens :

si la condition d'achat est remplie

S'il n'y a pas de transactions ouvertes sur cette paire

ouvrir un achat

s'il y a plus d'une transaction ouverte sur cette paire.

la transaction "X à acheter" est ouverte

Sinon, nous recevons une erreur lorsqu'une transaction est ouverte.

sinon, sélectionnez un ordre ouvert sur cette paire

Si l'ordre de vente

puis fermer sur le marché

on revient en arrière dans une boucle.


J'ai obtenu une erreur dans le terminal avec le code que j'ai maintenant - ticket invalide pour la fonction OrderClose

aidez-moi à résoudre ce problème


 
frxmax:

Où se trouve l'erreur ?

si (CONDITION D'ACHETER)

si(OrderSymbol()==symbole)
{
RefreshRates() ; // rafraîchir les prix
ticket=OrderSend(Symbol(),OP_BUY,Lot,Ask,3,Bid-StopLoss*Point,Bid+TakeProfit*Point, "Buy",1111,0,Green) ;
si(ticket>0)
{
if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("Ordre BUY ouvert : ",OrderOpenPrice()) ;
}
else Print("Erreur lors de l'ouverture de l'ordre BUY : ",GetLastError()) ;
retour(0) ;
}sélection
{
if(OrderSelect(0,SELECT_BY_POS,MODE_TRADES))
{
si(OrderType()==OP_SELL)
RefreshRates() ; // rafraîchissement des prix
OrderClose(NULL,Lot,Bid,3) ;
retour(0) ;
}

}

le sens est :

si la condition d'achat est remplie

s'il n'y a pas d'affaires en cours sur cette paire

ouvrir un achat

s'il y a plus d'une affaire ouverte à cette paire

la transaction "X à acheter" est ouverte

sinon nous émettons une erreur d'ouverture de transaction

Sinon, sélectionnez un ordre ouvert sur cette paire

Si l'ordre de vente

le fermer sur le marché

retourner à la boucle.

Le code que j'ai maintenant dans mon terminal me donne une erreur ticket invalide pour la fonction OrderClose

Veuillez m'aider à résoudre ce problème


Eh bien, votre code est un désordre - il ne fait pas du tout ce qu'il dit dans l'algorithme prévu.

Je suggère que vous compreniez d'abord l'utilisation correcte des fonctions

1) ticket invalide pour la fonction OrderClose

lire sur la fonction OrderClose https://docs.mql4.com/ru/trading/OrderClose

Ce que vous avez : OrderClose(NULL,Lot,Bid,3) ;
Y a-t-il une commande avec un ticket NULL ?

2) Les ordres de vente sont clôturés au prix de l'offre

 
KONDOR:
Script standard modify.mq4 dans le terminal


Merci !

Je l'ai fait glisser vers la fenêtre du graphique, j'ai demandé à me connecter au graphique et j'ai cliqué sur OK. Mais lors de l'ouverture des transactions, cela ne fonctionne pas.

Le journal affiche 2 messages à la fois :

1. chargé avec succès

2. retiré

Pourquoi s'enlèverait-il lui-même ?

 
Aide. J'ai besoin d'un code EA qui ouvre une position lorsque la moyenne mobile traverse le prix du tick. Je n'ai pas besoin de l'ensemble de l'EA, je l'écrirai moi-même. Je ne peux que deviner comment ouvrir une position d'achat ou de vente lorsque le tick croise la moyenne mobile.
 
markeliano:


Merci !

Je l'ai fait glisser vers la fenêtre du graphique, j'ai demandé à me connecter au graphique et j'ai cliqué sur OK. Mais lors de l'ouverture des transactions, cela ne fonctionne pas.

Le journal affiche 2 messages à la fois :

1. chargé avec succès

2. retiré

Pourquoi peut-il se retirer lui-même ?


Si vous avez encore besoin d'un chalutage de commandes, vous n'avez pas besoin d'un script, mais d'un conseiller... voir cette page.
 
Est-ce que je comprends bien. Une variable statique ne perd pas sa valeur entre les appels à start() ?
Raison: