Lester: Il s'agit d'un modèle avec des fonctions intégrées d'ouverture, de fermeture et de modification. L'ouverture et la clôture sont écrites par Nikolay Kositsin.
Je les ai facilement changés et ajouté des modifications.
Je pense que la façon de les appeler est claire, donc pour votre confort.
Lester: Ce modèle comporte des fonctions intégrées d'ouverture, de fermeture et de modification. L'ouverture et la clôture sont écrites par Nikolay Kositsin.
Je les ai facilement changés et ajouté des modifications.
Je pense que la façon de les défier est claire, donc pour votre commodité.
Whoa. Qu'est-ce que cela a à voir avec les mandats ? Nous parlons d'une position depuis le début. Une position et des ordres en attente sont des choses différentes. Ils doivent être fermés différemment !
Les ordres en attente ne sont pas fermés mais supprimés. Les positions sont fermées en ouvrant un ordre de marché de volume égal et de direction opposée à la position ouverte.
Le code que vous avez cité n'a pas été conçu pour supprimer les ordres en attente.
Vous pouvez utiliser cette fonction pour supprimer des commandes :
Je l'ai. Rien sur les ordres - seulement les positions.
J'ai prescrit PositionSelect le soir - il semble que cela m'ait permis de reprendre mon souffle. Il envoie (ferme) des positions de temps en temps, mais je pense que les conditions sont déjà impliquées ici.
Je ne comprends pas autre chose. Il ne forme pas de stop et de profit loss, dont les valeurs sont prescrites dans les paramètres d'entrée. Si je prescris ces valeurs dans l'envoi, la même chose se produit - c'est-à-dire rien.
inputint StopLoss=60; // Stop Lossinputint TakeProfit=170; // Take ProfitintOnInit()
...
STP = StopLoss;
TKP = TakeProfit;
if(_Digits==5 || _Digits==3)
{
STP = STP*10;
TKP = TKP*10;
}
return(0);
}
...
mrequest.action = TRADE_ACTION_DEAL; // немедленное исполнение
mrequest.price = NormalizeDouble(Ask,_Digits); // последняя цена ask
mrequest.sl = StopLoss; // Stop Loss
mrequest.tp = TakeProfit; // Take Profit
mrequest.symbol = _Symbol; // символ
mrequest.volume = Lot; // количество лотов для торговли
mrequest.magic = EA_Magic; // Magic Number
mrequest.type = ORDER_TYPE_BUY; // ордер на покупку
mrequest.type_filling = ORDER_FILLING_FOK; // тип исполнения ордера - все или ничего
mrequest.deviation=10; // проскальзывание от текущей цены//--- отсылаем ордерOrderSend(mrequest,mresult);
// анализируем код возврата торгового сервераif(mresult.retcode==10009 || mresult.retcode==10008) //запрос выполнен или ордер успешно помещен
{
Alert("Ордер Buy успешно помещен, тикет ордера #:",mresult.order,"!!");
}
else
{
Alert("Запрос на установку ордера Buy не выполнен - код ошибки:",GetLastError());
return;
Bonjour. Pouvez-vous me dire ce que je dois faire dans MT4 après m'être abonné aux signaux, afin que la synchronisation puisse avoir lieu ? J'ai trouvé dans les instructions ce qu'il faut faire avec MT5, je n'ai pas trouvé les instructions pour MT4. Je me suis abonné au signal de MT4.
Je me suis inscrit pour recevoir le signal de MT4. Merci.
Compris. Aucune mention des ordres - seulement des positions.
J'ai prescrit PositionSelect la nuit - il semble respirer. Il envoie (ferme) des positions de temps en temps, mais je pense que les conditions sont déjà impliquées ici.
Je ne comprends pas autre chose. Il ne forme pas de Stop et de Profit Loss, dont les valeurs sont prescrites dans les paramètres d'entrée. Si je prescris ces valeurs dans l'envoi, la même chose se produit - c'est-à-dire rien.
Les Stops et les Profits ne sont pas spécifiés correctement.
Здес указали целое число
inputint StopLoss=60; // Stop Lossinputint TakeProfit=170; // Take Profit
...
STP = StopLoss;
TKP = TakeProfit;
if(_Digits==5 || _Digits==3)
{
STP = STP*10;
TKP = TKP*10;
}
return(0);
}
...
mrequest.action = TRADE_ACTION_DEAL; // немедленное исполнение
mrequest.price = NormalizeDouble(Ask,_Digits); // последняя цена ask
mrequest.sl = NormalizeDouble(Ask - StopLoss*_Points,_Digits); // Stop Loss
mrequest.tp = NormalizeDouble(Ask + TakeProfit*_Points,_Digits); // Take Profit
На места для стоп и профит нужна цена!
La raison pour laquelle les stops ne sont pas fixés lors de l'ouverture d'une position peut dépendre du mode de trading. Il existe trois modes : Exécution sur demande, Exécution instantanée et Exécution sur le marché.
Si votre courtier utilise le mode d'exécution du marché, vous devez d'abord ouvrir une position, puis la modifier (fixer des stops) au tick suivant. En même temps, c'est-à-dire en un seul ordre, avec ce mode de trading il n'est pas possible d'ouvrir une position avec des stops.
En effet, il y a l'exécution du marché chez Alpari . Existe-t-il une structure de modification de l'ordre elle-même ? Comme il n'y a pas de modification dans le forum tant qu'il y a un ordre de vente ou d'achat ouvert.
Si je ne me trompe pas, le "poisson" de la modification ressemble à ceci.
if(PositionSelect(_Symbol)==true) // есть открытая позиция
{
if(PositionGetInteger(POSITION_TYPE)==POSITION_TYPE_BUY)
{ ModifyPosition(стоплосс на покупку)
}
else if(PositionGetInteger(POSITION_TYPE)==POSITION_TYPE_SELL)
{
{ ModifyPosition(стоплосс на продажу)
}
return
Lester: En effet, dans Alpari Market Execution . Existe-t-il une structure de modification de l'ordre elle-même ? Comme il n'y a pas de modification dans le forum tant qu'il y a un ordre de vente ou d'achat ouvert.
Si je ne me trompe pas, le "poisson" de la modification ressemble à ceci.
Utilisez la solution toute prête de la bibliothèque standard(classe CTrade- méthode PositionModify). C'est une bonne solution pour un début. À tout moment, vous pouvez créer votre propre classe similaire et apporter les modifications nécessaires.
Lester:
Il s'agit d'un modèle avec des fonctions intégrées d'ouverture, de fermeture et de modification.
L'ouverture et la clôture sont écrites par Nikolay Kositsin.
Je les ai facilement changés et ajouté des modifications.
Je pense que la façon de les appeler est claire, donc pour votre confort.
Désolé pour ça - j'ai mélangé lesfichiers.
Essayez de cette façon :
Lester:
Ce modèle comporte des fonctions intégrées d'ouverture, de fermeture et de modification.
L'ouverture et la clôture sont écrites par Nikolay Kositsin.
Je les ai facilement changés et ajouté des modifications.
Je pense que la façon de les défier est claire, donc pour votre commodité.
Comment ouvrir de tels fichiers avec un éditeur ?
Tu ne peux pas les ouvrir. ))
Essayez de lire quelques articles. Il y a beaucoup de choix, des plus petits aux plus grands. ))
Malheureusement, les commandes ne se ferment pas du tout. Je pense que je devrais y réfléchir un peu).
J'ai changé le fichier, désolé.
J'ai mélangé les fichiers, désolé.
Whoa. Qu'est-ce que cela a à voir avec les mandats ? Nous parlons d'une position depuis le début. Une position et des ordres en attente sont des choses différentes. Ils doivent être fermés différemment !
Les ordres en attente ne sont pas fermés mais supprimés. Les positions sont fermées en ouvrant un ordre de marché de volume égal et de direction opposée à la position ouverte.
Le code que vous avez cité n'a pas été conçu pour supprimer les ordres en attente.
Vous pouvez utiliser cette fonction pour supprimer des commandes :
Je l'ai. Rien sur les ordres - seulement les positions.
J'ai prescrit PositionSelect le soir - il semble que cela m'ait permis de reprendre mon souffle. Il envoie (ferme) des positions de temps en temps, mais je pense que les conditions sont déjà impliquées ici.
Je ne comprends pas autre chose. Il ne forme pas de stop et de profit loss, dont les valeurs sont prescrites dans les paramètres d'entrée. Si je prescris ces valeurs dans l'envoi, la même chose se produit - c'est-à-dire rien.
Bonjour. Pouvez-vous me dire ce que je dois faire dans MT4 après m'être abonné aux signaux, afin que la synchronisation puisse avoir lieu ? J'ai trouvé dans les instructions ce qu'il faut faire avec MT5, je n'ai pas trouvé les instructions pour MT4. Je me suis abonné au signal de MT4.
Je me suis inscrit pour recevoir le signal de MT4. Merci.
Compris. Aucune mention des ordres - seulement des positions.
J'ai prescrit PositionSelect la nuit - il semble respirer. Il envoie (ferme) des positions de temps en temps, mais je pense que les conditions sont déjà impliquées ici.
Je ne comprends pas autre chose. Il ne forme pas de Stop et de Profit Loss, dont les valeurs sont prescrites dans les paramètres d'entrée. Si je prescris ces valeurs dans l'envoi, la même chose se produit - c'est-à-dire rien.
La raison pour laquelle les stops ne sont pas fixés lors de l'ouverture d'une position peut dépendre du mode de trading. Il existe trois modes : Exécution sur demande, Exécution instantanée et Exécution sur le marché.
Si votre courtier utilise le mode d'exécution du marché, vous devez d'abord ouvrir une position, puis la modifier (fixer des stops) au tick suivant. En même temps, c'est-à-dire en un seul ordre, avec ce mode de trading il n'est pas possible d'ouvrir une position avec des stops.
En général, regardez la structure d'une demande de transaction :Référence MQL5 / Constantes, énumérations et structures standard / Structures de données / Structure d'une demande de transaction. Je pense que cela vous aidera à poursuivre votre étude de la langue.
Si je ne me trompe pas, le "poisson" de la modification ressemble à ceci.
En effet, dans Alpari Market Execution . Existe-t-il une structure de modification de l'ordre elle-même ? Comme il n'y a pas de modification dans le forum tant qu'il y a un ordre de vente ou d'achat ouvert.
Si je ne me trompe pas, le "poisson" de la modification ressemble à ceci.