[Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas votre chemin. Je ne peux aller nulle part sans toi. - page 552

 
Zamut >>:

if(OrderSelect(OrderMagicNumber()==13,SELECT_BY_TICKET)

OrderModify....

Так можно? Если что, поправьте.

Donc je suppose que nous ne voulons pas penser avec nos têtes, ok, je vais vous donner un indice.

Si vous voulez l'utiliser de cette façon, vous devez simplement écrire une fonction pour rechercher un ticket par magicien, comme ceci

int поиск_тикета_по_Магику(int Магик){
 int тикет=-1;
 for(int i=0;i<OrdersTotal();i++){
  if(OrderSelect(i,SELECT_BY_POS))
    if(OrderMagicNumber()==Магик)тикет=OrderTicket(); 
 }
return(тикет);
}
Vous pouvez ensuite insérer facilement cette construction dans la forme dont vous avez besoin,

Bien que votre demande semble idiote dans ce cas, et en effet pourquoi sélectionner l'ordre du billet s'il est déjà sélectionné.

 if(OrderSelect(поиск_тикета_по_Магику(13),SELECT_BY_TICKET){
 OrderModify....
}

Donc je dis apprenez les maths.

 
Wow =) Merci pour le conseil, Urain. Je suppose que je vais devoir abandonner cette idée de magie, c'est trop cool pour moi, encore. Je ne suis pas un grand programmeur. En me fiant à mes minuscules connaissances du langage, j'ai déjà écrit environ la moitié de mon EA =) . J'ai en quelque sorte compris comment sélectionner l'ordre par ticket, je vais y travailler.
 
Cher gourou ! Veuillez me dire comment supprimer les données d'un indicateur personnalisé auquel MAA est appliqué...
C'est-à-dire que MAK doit lisser les bruits de l'indicateur personnalisé et que les données MAK exactes sont utilisées pour définir les critères de trading, avec d'autres signaux.

Le plus drôle, c'est que j'ai rencontré cette description quelque part sur le forum, et que j'ai vu cette description quelque part sur le forum.

SZS. Le plus drôle, c'est que quelque part sur un forum, cette description m'est déjà venue à l'esprit... J'ai déjà passé une journée à le chercher, je suis épuisé...
ZZZY. Ne me dites rien - apprenez à utiliser la recherche ... Je m'en connais un mauvais ami... :)

 
artmedia70 >>:
Уважаемые гуру! Подскажите пжлст как снять в советнике данные пользовательского индикатора с наложенной на него МАшкой...
Т.е. МАшка должна сглаживать шумы пользовательского индюка и именно МАшкины данные уже используются для определения торговых критериев, наряду с другими сигналами.

Отдельно с МАшки я умею, отдельно с польз. индикатора - умею, а как их в коде "наложить" друг на дружку, как это делается в терминале при выборе Previous Indicator`s Data для МА - не пойму.

ЗЫ. Самое смешное, что где-то на форуме мне это описание уже встречалось... Но уже день потратил на поиски, из сил выбился...
ЗЗЫ. Только не говорите - учись пользоваться поиском... Сам знаю, что плохо с ним дружу... :)

iMaOnArray pour aider ;)
 
Necron >>:
iMaOnArray вам в помощь ;)
Merci ! En route pour le puzzle... :)
 
artmedia70 >>:
Спасибо! Пошел голову ломать... :)
Il serait plus pratique pour vous de le faire avec un indicateur séparé. Tout d'abord, dans le cycle de recalcul, vous remplissez les valeurs des indicateurs dans le tampon des indicateurs, puis vous utilisez ces valeurs pour calculer le signal MA.

Voici un exemple de calcul de la MA par le RSI (le point de départ) :

void start() {
   // граница пересчета
   int limit=Bars-IndicatorCounted()-1;  
   if(limit>1) limit=Bars-1; 
  // расчет главной линии индикатора
   for(i=limit; i>=0; i--) Main[i]=iRSI(NULL,0,RSIperiod,0, i);
   // расчет сигнальной по массиву Main[]
   for(i=limit; i>=0; i--) Signal[i]=iMAOnArray(Main,0,Speriod,0,Smethod,i);
  }
 
Peut-être y a-t-il une fonction prête (pour ne pas être trop sournois...), qui compare une position perdante (d'un nombre de points donné) avec plusieurs positions rentables, et les ferme toutes, couvrant ainsi une grosse perte avec plusieurs positions rentables, apportant ainsi un petit, à nouveau, nombre de points de profit donné.
? ???????????????????????????????????????????????????????????????
 
artmedia70 >>:
Друзья! А может быть есть уже готовая функция (дабы не мудрить лукаво...), которая сравнивает позицию, которая находится в убытке (на заданное кол-во пунктов) с несколькими позициями, находящимися в профите, и закрывает их все, тем самым покрывая одного большого лося несколькими профитными, принося тем самым небольшое, опять же, заданное кол-во пунктов профита.
????????????????????????????????????????????????????????????????

C'est une question assez délicate, j'ai personnellement besoin de précisions pour comprendre ce que vous voulez,

La seule chose que je puisse faire est d'écrire la formule pour déterminer combien de pips un ordre a passé

int количество_пунктов=OrderProfit()/OrderLots();

mais il est clair que l'ordre doit être choisi par une sélection.

 
Urain писал(а) >>

La seule chose que je puisse faire est d'écrire une formule pour déterminer combien de pips un ordre a passé.

Mais il faut d'abord choisir l'ordre via la sélection.


J'ai oublié de multiplier par 0,1.
 
Urain >>:

Довольно мудрённо ставите вопрос, мне лично чтоб разобрать что вы хотите нужны пояснения,

единственное чем могу помочь так это записать формулу определения сколько пунктов прошёл ордер

но предварительно понято нужно выбрать ордер через селект.

:)
Pour clarifier :
1. Nous avons un poste qui est en profonde... dans une profonde dépression. Il mange donc des fonds propres. Quand nous la fermons, nous perdons notre capital.

2. Il y a une ou plusieurs positions qui sont du côté positif. Ils consomment aussi de la marge, mais lorsqu'ils sont fermés, les fonds nous sont rendus.

3. nous avons besoin d'une fonction qui trouve cette position perdante et trouve des positions rentables dont le profit total (en pips) dépasse la perte en pips de la position perdante.
4. Nous fermons toutes ces positions et obtenons l'équité hors de la forte baisse.