Bonsoir. J'aimerais savoir si quelqu'un utilise l'indicateur de répartition des transactions par niveaux de prix sur un horizon temporel donné, qui peut être téléchargé sur http://fxcoder.ru/indicators/tpo. Si oui, comment l'analyser correctement ? Avez-vous des informations à ce sujet ?
artemka_1981: Maintenant, lorsque le test n'ouvre pas une seule transaction dans le journal, il est écrit Open_BuyS_SellS EURUSD,Daily : OrderSend error 131.
L'erreur 131 est un volume incorrect. Essayez le lot 1 par exemple, vous ne serez peut-être pas autorisé à ouvrir avec un lot de 0,01.
Voir l'aide pour les paramètres et les codes d'erreur de OrderSend
3 - paramètres erronés.
Vous en avez oublié un et au lieu de date d'expiration, vous avez écrit couleur flèche_color.
Je suis désolé pour les questions stupides, c'est mon premier EA que j'essaie d'écrire par moi-même, tous les bugs ont commencé lorsque j'ai ajouté la fonction trail, c'est pourquoi je m'adresse à vous pour que vous m'aidiez à résoudre mes erreurs.
L'essence de la stratégie : Entrée par signal stochastique (5,14,3) sortie également par stochastique, mais avec une autre période (5,3,3). Je ne comprends pas comment faire une sortie par stochastique et non par signal inverse. J'ai un problème et je n'ai aucune idée de la façon dont il peut être résolu, je vais essayer de vous expliquer. Ainsi, dans le code que j'ai posté, il y a 2 fonctions
//+------------------------------------------------------------------+//| подготовить массив тикетов для закрытия |//+------------------------------------------------------------------+void PrepareTicketsToClose(int signal, bool Revers, int & ticketsClose[][2], double & lots[],double arrayTickets[][9])
{
int size=ArrayRange(arrayTickets,0);
//----if (size==0) return;
int i,type,ticket,closeSize;
for (i=0;i<size;i++)
{
type=arrayTickets[i][1];
// если тип ордера не рыночный, то пропускаемif (type>OP_SELL) continue;
if (Revers) // перевернем тип рыночного ордера
{
if (type==OP_BUY) type=OP_SELL; else type=OP_BUY;
}
// тут решаем для каждого открытого ордера его судьбу// оставить в рынке или добавить в массив на закрытиеif (type==OP_BUY)
{
//// код разрешающий оставить покупку// как примерif (signal==OP_BUY) continue;
}
if (type==OP_SELL)
{
//// код разрешающий оставить продажу// как примерif (signal==OP_SELL) continue;
}
closeSize=ArrayRange(ticketsClose,0);
ArrayResize(ticketsClose,closeSize+1);
ArrayResize(lots,closeSize+1);
ticketsClose[closeSize][0] = arrayTickets[i][0]; // # тикета
ticketsClose[closeSize][1] = arrayTickets[i][1]; // тип ордера// здесь укажем сколько лотов нужно закрыть
lots[closeSize] = arrayTickets[i][2]; // закрываемый объем// можно закрывать частично, тогда нужно переписать строку сверху
}
//----return;
}
//+------------------------------------------------------------------+//| Закрывает ордера с указанными тикетами |//+------------------------------------------------------------------+void CloseMarketOrders(int ticketsArray[][2], double lotsArray[])
{
//----int i,size=ArrayRange(ticketsArray,0);
if (size==0) return;
int ticket,type;
double lots;
bool res;
int total=OrdersTotal();
for (i=0;i<size;i++)
{
ticket = ticketsArray[i][0];
type = ticketsArray[i][1];
lots = lotsArray[i];
RefreshRates(); // на всякий случай обновим сведения о рыночном окружении// блок закрытия покупокif (type==OP_BUY)
{
res = OrderClose(ticket,lots,Bid,Slippage,Orange);
if (!res)
{
Print("Не удалось закрыть ордер в покупку #",ticket,"! Ошибка №",GetLastError());
// дальнейшая обработка ошибки, написать самостоятельно
}
}
// блок закрытия продажif (type==OP_SELL)
{
res = OrderClose(ticket,lots,Ask,Slippage,Orange);
if (!res)
{
Print("Не удалось закрыть ордер в продажу #",ticket,"! Ошибка №",GetLastError());
// дальнейшая обработка ошибки, написать самостоятельно
}
}
}
//----return;
}
Dans void PrepareTicketsToClose(int signal, bool Revers, int & ticketsClose[][2], double & lots[],double arrayTickets[][9]) nous devons mettre une condition qui décidera si nous devons laisser ou fermer l'ordre... J'ai essayé de mettre des conditions mais rien ne fonctionne.... Quelqu'un peut-il regarder et montrer s'il y a une erreur dans ces fonctions ou si je me suis trompé ? ....
Bonjour. Après avoir exécuté le conseiller expert dans le testeur, j'ai besoin d'obtenir des informations sur le volume total des transactions effectuées en lots (par exemple, dans les journaux). Le Conseiller Expert a le bloc MM activé, les trades sont exécutés en % des fonds libres, donc la simple multiplication par le nombre de trades ne fonctionne pas. Existe-t-il une fonction standard qui fournit cette information (comme OrderLots, mais avec le montant total) ? Si une telle fonction n'existe pas, quelqu'un peut-il suggérer un code simple pour la réalisation de cette tâche ? Merci.
comment ouvrir les ports pour mt4 sur le modem ADSL via WIFI ? je vais à l'internet sur 6 DTs. modèle tp-link W8901G lire que vous pouvez ouvrir les ports pour torents peut quelqu'un face ?
comment ouvrir les ports pour mt4 sur le modem ADSL via WIFI ? je vais à l'internet sur 6 DTs. modèle tp-link W8901G lire que vous pouvez ouvrir les ports pour torents peut quelqu'un face ?
Maintenant, lorsque le test n'ouvre pas une seule transaction dans le journal, il est écrit Open_BuyS_SellS EURUSD,Daily : OrderSend error 131.
L'erreur 131 est un volume incorrect. Essayez le lot 1 par exemple, vous ne serez peut-être pas autorisé à ouvrir avec un lot de 0,01.
L'erreur 131 est un volume incorrect. Essayez le lot 1 par exemple, vous ne serez peut-être pas autorisé à ouvrir avec un lot de 0,01.
Après-midi. Ecrit maintenant Open_BuyS_SellS EURUSD,H4 : OrderSend error 3
Bonne journée. Maintenant il dit Open_BuyS_SellS EURUSD,H4 : OrderSend error 3
Voir l'aide pour les paramètres et les codes d'erreur de OrderSend
3 - paramètres erronés.
Vous en avez oublié un et au lieu de date d'expiration, vous avez écrit couleur flèche_color.
Voir l'aide pour les paramètres et les codes d'erreur de OrderSend
3 - paramètres erronés.
Vous en avez oublié un et au lieu de date d'expiration, vous avez écrit couleur flèche_color.
aide qui sait !!!!
J'ai un problème et je n'ai aucune idée de la façon dont il peut être résolu, je vais essayer de vous expliquer.
Ainsi, dans le code que j'ai posté, il y a 2 fonctions
Dans void PrepareTicketsToClose(int signal, bool Revers, int & ticketsClose[][2], double & lots[],double arrayTickets[][9]) nous devons mettre une condition qui décidera si nous devons laisser ou fermer l'ordre...
J'ai essayé de mettre des conditions mais rien ne fonctionne....
Quelqu'un peut-il regarder et montrer s'il y a une erreur dans ces fonctions ou si je me suis trompé ? ....
comment ouvrir les ports pour mt4 sur le modem ADSL via WIFI ? je vais à l'internet sur 6 DTs. modèle tp-link W8901G lire que vous pouvez ouvrir les ports pour torents peut quelqu'un face ?
comment ouvrir les ports pour mt4 sur le modem ADSL via WIFI ? je vais à l'internet sur 6 DTs. modèle tp-link W8901G lire que vous pouvez ouvrir les ports pour torents peut quelqu'un face ?