[ARCHIVE !] Toute question de débutant, pour ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 4. - page 214

 
Top2n:
Mais tout de même, je n'arrive pas à trouver comment fermer la paire en attente qui a été ouverte dans la paire d'achat.
Par exemple, je peux mettre un ticket de magik à l'achat.
 

Bonne journée à tous.

J'ai essayé d'écrire un indicateur, il semble fonctionner, mais seulement sur l'historique il dessine comme prévu et ensuite quand de nouvelles cotations arrivent il dessine un masque habituel.

Le code est joint :

int start()
{
int counted_bars=IndicatorCounted();
int i,n;
double Stark=0;
//----
i=Bars-counted_bars-1;//+50;
// n=Bars-counted_bars-1;
while(i>=0)
{
//----

double Ma=iMA(NULL,0,PerMa,Shift,MODE_EMA,PRICE_CLOSE,i);
//double Ma1=iMA(NULL,0,PerMa,Shift,MODE_EMA,PRICE_CLOSE,i+1);
if(Stark+Step*Point<Ma)Stark=Ma;
if(Stark-Step*Point>Ma)Stark=Ma;
ABuf[i]=Stark;

//----
i--;
}
return(0);
}


S'il vous plaît, aidez-moi à le réparer pour qu'il continue à dessiner des étapes.

Je l'apprécierais vraiment.

Gek.

 
Bon après-midi ! !! S'il vous plaît, rappelez-moi comment écrire l'expression correctement, car le compilateur jure. Asigmentez-le, un point-virgule semble redondant.
int schet=0;
int start()
  { double Lots;
//----
 for(schet;schet<kolitsestvo;schet++){
 
Dimka-novitsek:
Bon après-midi ! !! S'il vous plaît, rappelez-moi comment écrire l'expression correctement, car le compilateur jure. Asigmentez-le, un point-virgule semble redondant.

Changez les deux premières lignes.
 

Plus précisément


int start()
{ double Lots; int schet=0;
//----
for(schet;schet<kolitsestvo;schet++){

 
Top2n:

ticket de la dernière position fermée==avec position en attente fixée + 1

Bonjour, le serveur n'ouvre-t-il des positions que pour vous ?

La fonction OrderSend possède un champ magique - utilisez-le.

 

        int schet=0;
int start()
  { double Lots;
//----
 if(schet<kolitsestvo){schet++;
Gek34 :



Changez les deux premières lignes.


Je suis désolé, la boucle s'exécutera-t-elle alors le nombre de fois ? Nah, ici je pensais - non, ça va certainement être sur chaque tique. Ok, je vais y réfléchir. Merci.

Je vais y réfléchir.

 
Dimka-novitsek:


Excusez-moi, la boucle sera-t-elle alors exécutée le nombre de fois ? Non, je pense... non, ça va certainement être sur chaque tique. Ok, je vais y réfléchir. Je vais y réfléchir. Merci.

Pensée.

C'est ainsi qu'il sera exécuté le bon nombre de fois.

int start()
{ double Lots;
//----
for(int schet=0;schet<kolitsestvo;schet++){
 

Messieurs, toute la journée, je n'ai pas réussi à me rapprocher d'une solution à ce problème.

Comment implémenter cet algorithme dans le code ?

подается сигнал "sig1" срабатывает команда BUY и устанавливается отложенный ордер SELLSTOP ниже ордера BUY.

при закрытие позиции BUY , SELLSTOP тоже удаляется.

Но как быть когда этот BAY не закрылся, и открылся следующий BUY и следующий и т.д.

Этот SELLSTOP который установлен первым нужно как то вычислить, чтоб закрыть после того когда уже и первый BUY закроется.

Может у кого нибудь есть готовый  код. Пробовал через функции Кими в частности: 

пытался возвратить тикет последнего закрытого ордера и сравнить его с тикетом отложенного ордера прибавив к нему 1-( т.к. отложка открывалась всегда после бая)

но нечего не вышло. Помогите плиз без вас не куда)
 

On vous l'a dit, n'est-ce pas ?

Ouvrir un ordre d'achat - se souvenir du ticket de cet ordre

définir un ordre SellStop - écrire le Ticket de cet ordre dans le Magik de cet ordre...

---

appeler la fonction au départ pour vérifier la présence de l'ordre d'achat selon la magik dans les SellStops...

si un tel ordre n'existe pas (achat) - supprimer le SellStop...

il ne faut que 15 lignes de code...

Raison: