Bonjour, Je veux fermer des positions dirigées différemment lorsque le profit =0. Différents nombres de positions d'achat et de vente, différentes tailles de lots.
Quel est le problème avec la fonction de recherche du prix moyen, c'est-à-dire le point de profit zéro ?
double AveroProf(string sy="", int op=-1, int mn1=-1)
{
double Buylots=0;
double Buysum=0;
double Selllots=0;
double Sellsum=0;
double zeroprice=0;
for (int i=0; i<OrdersTotal(); i++)
{
if (!OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) continue;
if (OrderSymbol()!=Symbol()) continue;
if (OrderMagicNumber()!=mn1) continue;
if (OrderType()==OP_BUY)
{
Buylots+=OrderLots();
Buysum+=OrderLots()*OrderOpenPrice();
}
if (OrderType()==OP_SELL)
{
Selllots+=OrderLots();
Sellsum+=OrderLots()*OrderOpenPrice();
}
}
if ((Buylots-Selllots)>0)
zeroprice=NormalizeDouble((Buysum - Sellsum)/(Buylots - Selllots),_Digits);
return( zeroprice);
}
Je crois que ce code ne fonctionne que pour 2 commandes dirigées différemment
S'il y a plusieurs ordres d'achat et de vente et qu'ils ont tous des prix d'ouverture différents, il semble que cela ne fonctionne pas - vous devez prendre en compte le bénéfice de l'ordre et la valeur du point dans la devise.
j'ai regardé ce que j'avais sous la main, je n'ai rien trouvé, mais je sais que j'ai testé ce code
il semble qu'il existe un indicateur dans cb qui calcule correctement les niveaux pour les ordres multidirectionnels - je l'ai cherché et trouvé l'année dernière.
Bonjour, je veux fermer des positions dirigées différemment lorsque le profit =0. Différents nombres de positions d'achat et de vente, différentes tailles de lots.
Quel est le problème avec la fonction de recherche du prix moyen, c'est-à-dire le point de profit zéro ?
Si vous voulez mettre des stops, il est préférable de ne pas le faire sur des positions multidirectionnelles. Bien qu'avec un étalement serré, bien sûr, cela pourrait fonctionner correctement. Mais même ces sociétés de courtage ont des moments où le spread saute. C'est pourquoi la meilleure variante consiste à calculer le profit et à fermer les positions lorsqu'il est légèrement supérieur à 0(le slippage est toujours pris en compte). C'est-à-dire travailler avec le moment actuel du marché.
Торговая деятельность в платформе связана с формированием и отсылкой рыночных и отложенных ордеров для исполнения брокером, а также с управлением текущими позициями путем их модификации или закрытия. Платформа позволяет удобно просматривать торговую историю на счете, настраивать оповещения о событиях на рынке и многое другое. Открытие позиций...
Je crois que ce code ne fonctionne que pour 2 commandes dirigées différemment
S'il y a plusieurs ordres d'achat et de vente et qu'ils ont tous des prix d'ouverture différents, il semble que cela ne fonctionne pas - vous devez prendre en compte le bénéfice de l'ordre et la valeur du point dans la devise.
j'ai regardé ce que j'avais sous la main, je n'ai rien trouvé, mais je sais que j'ai testé ce code
il semble qu'il existe un indicateur dans QB qui calcule les niveaux corrects pour les ordres opposés - j'ai cherché l'année dernière et je l'ai trouvé.
Alors vous ne l'avez pas vérifié correctement... Il s'agit d'un calcul classique de 100% 0
Donc vous ne l'avez pas vérifié correctement... Il s'agit d'un calcul classique de 100% 0
Je ne vais même pas discuter, revenez sur terre, essayez de vérifier où vous aurez un seuil de rentabilité si vous le placez de haut en bas sur le graphique.
Bonjour, aidez un débutant avec une tâche simple. L'indicateur dans une fenêtre séparée montre des nombres fractionnaires 0.123456 1.123456 et j'ai besoin d'entiers comme 123 1123.
Quelqu'un peut-il me donner un indice sur la façon de résoudre ce problème ?
Bonjour, aidez un débutant avec une tâche simple. L'indicateur dans une fenêtre séparée montre des nombres fractionnaires 0.123456 1.123456 et j'ai besoin d'entiers comme 123 1123.
Quelqu'un peut-il me donner un indice sur la façon de résoudre ce problème ?
intvalue = (int) 0.12456789*1000000;
La chose la plus facile à laquelle j'ai pu penser)
Konstantin Nikitin: Si vous voulez mettre des stops, il est préférable de ne pas le faire sur des positions multidirectionnelles. C'est une très bonne idée de placer des stops sur ces positions. Mais même ces sociétés de courtage ont des moments où le spread saute. C'est pourquoi la meilleure variante consiste à calculer le profit et à fermer les positions lorsqu'il est légèrement supérieur à 0 (le slippage est toujours pris en compte). C'est-à-dire travailler avec le moment actuel du marché.
J'essaie de faire des pyramides, en construisant avec un plus petit lot sur la tendance mais avec une ouverture opposée.
Bonjour, Je veux fermer des positions dirigées différemment lorsque le profit =0. Différents nombres de positions d'achat et de vente, différentes tailles de lots.
Quel est le problème avec la fonction de recherche du prix moyen, c'est-à-dire le point de profit zéro ?
Je crois que ce code ne fonctionne que pour 2 commandes dirigées différemment
S'il y a plusieurs ordres d'achat et de vente et qu'ils ont tous des prix d'ouverture différents, il semble que cela ne fonctionne pas - vous devez prendre en compte le bénéfice de l'ordre et la valeur du point dans la devise.
j'ai regardé ce que j'avais sous la main, je n'ai rien trouvé, mais je sais que j'ai testé ce code
il semble qu'il existe un indicateur dans cb qui calcule correctement les niveaux pour les ordres multidirectionnels - je l'ai cherché et trouvé l'année dernière.
Bonjour, je veux fermer des positions dirigées différemment lorsque le profit =0. Différents nombres de positions d'achat et de vente, différentes tailles de lots.
Quel est le problème avec la fonction de recherche du prix moyen, c'est-à-dire le point de profit zéro ?
Je crois que ce code ne fonctionne que pour 2 commandes dirigées différemment
S'il y a plusieurs ordres d'achat et de vente et qu'ils ont tous des prix d'ouverture différents, il semble que cela ne fonctionne pas - vous devez prendre en compte le bénéfice de l'ordre et la valeur du point dans la devise.
j'ai regardé ce que j'avais sous la main, je n'ai rien trouvé, mais je sais que j'ai testé ce code
il semble qu'il existe un indicateur dans QB qui calcule les niveaux corrects pour les ordres opposés - j'ai cherché l'année dernière et je l'ai trouvé.
Alors vous ne l'avez pas vérifié correctement... Il s'agit d'un calcul classique de 100% 0
Donc vous ne l'avez pas vérifié correctement... Il s'agit d'un calcul classique de 100% 0
Je ne vais même pas discuter, revenez sur terre, essayez de vérifier où vous aurez un seuil de rentabilité si vous le placez de haut en bas sur le graphique.
1. Achetez - Achetez - Achetez - Vendez - Vendez - Vendez
2. acheter - vendre - vendre - vendre - acheter - acheter
c'est le calcul correcthttps://www.mql5.com/ru/code/10007 version 2 , c'est le calcul à utiliser
vous devriez vérifier vos calculs classiques
Bonjour, aidez un débutant avec une tâche simple. L'indicateur dans une fenêtre séparée montre des nombres fractionnaires 0.123456 1.123456 et j'ai besoin d'entiers comme 123 1123.
Quelqu'un peut-il me donner un indice sur la façon de résoudre ce problème ?
Bonjour, aidez un débutant avec une tâche simple. L'indicateur dans une fenêtre séparée montre des nombres fractionnaires 0.123456 1.123456 et j'ai besoin d'entiers comme 123 1123.
Quelqu'un peut-il me donner un indice sur la façon de résoudre ce problème ?
La chose la plus facile à laquelle j'ai pu penser)
Si vous voulez mettre des stops, il est préférable de ne pas le faire sur des positions multidirectionnelles. C'est une très bonne idée de placer des stops sur ces positions. Mais même ces sociétés de courtage ont des moments où le spread saute. C'est pourquoi la meilleure variante consiste à calculer le profit et à fermer les positions lorsqu'il est légèrement supérieur à 0 (le slippage est toujours pris en compte). C'est-à-dire travailler avec le moment actuel du marché.
J'essaie de faire des pyramides, en construisant avec un plus petit lot sur la tendance mais avec une ouverture opposée.
Merci à tous ceux qui ont aidé.