[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 420

 

déclarer une variable

bool ret;

avant la boucle

 

snowman647, hein ?)

il n'y a pas de problème avec la compilation, il y a un problème avec l'algorithme.

 
Summer писал(а) >>

snowman647, hein ?)

Il n'y a pas de problème avec la compilation, il y a un problème avec l'algorithme.

Il faut probablement regarder comment les nouveaux postes sont ouverts.

 
Les gens, qui peuvent me donner un indice. Hier, je faisais un EA sur les niveaux de Murray. L'idée est de vendre/acheter à partir des niveaux 8/0 et 0/8 et TP au pivot. J'ai utilisé ObjectGet() pour obtenir les lignes car je n'ai pas trouvé d'autre moyen. Le problème est que si la volatilité diminue, les niveaux sont redessinés et le plus important est que le TP change automatiquement. Mais selon le TS, cela ne devrait pas changer. Mais comment faire pour que le TP reste inchangé ? Je vous remercie d'avance de votre aide.
 
Vinin >>:

Наверно надо смотреть как открываются новые позиции

il s'ouvre, mais il ne veut pas se fermer)

Il doit y avoir un problème avec l'algorithme de fermeture.

Le code est le plus simple, aucun des programmeurs expérimentés ne peut comprendre ce qui ne va pas).

 
Bonne journée à tous ! Je teste un EA en temps réel sur un compte de démonstration (le terminal fonctionne 24 heures sur 24). J'ai une question ! Metatrader est capable d'émettre des statistiques sur l'EA qui fonctionne vraiment sur la base de ces opérations, ce qu'il a fait (bien sûr, je ne veux pas dire back test ici) ? MERCI À VOUS TOUS !
 
Summer писал(а) >>

il s'ouvre, mais il ne veut pas se fermer)

Il doit y avoir un problème avec l'algorithme de fermeture.

Le code est simple, aucun des programmeurs expérimentés ne peut comprendre ce qui ne va pas).

Si l'ouverture n'utilise pas Magik, alors comment pouvez-vous fermer par Magik. C'est pourquoi la question se pose.

 

Vinin, mon brave homme) le magicien en vaut la peine))

extern double Lots=0.1;

int start()
{

bool ret;

double Ind11=iMA(NULL,0,12,0,0,0,0);
double Ind12=iMA(NULL,0,12,0,0,0,1);

if(Ind11>Ind12)
{

OrderSend(Symbol(),OP_BUY,Lots,Ask,3,0,0,"",16384,0,Green);

}

if(Ind11<Ind12)
{



for(ic=OrdersTotal()-1;ic>=0;ic--)
{
if(OrderSelect(ic,SELECT_BY_POS,MODE_TRADES)==false) continue;
if (OrderSymbol()==Symbol() && OrderMagicNumber()==16384)
{
if (OrderType()==OP_BUY)
OrderClose(OrderTicket(),OrderLots(),Bid,5,CLR_NONE);

if (OrderType()==OP_SELL)
OrderClose(OrderTicket(),OrderLots(),Ask,5,CLR_NONE);
}}



}

return(0);

}

 
Necron >>:
Народ, кто может подсказать. Вчера делал советника по уровням Мюррея. Там смысл такой, что от уровней 8/0 и 0/8 надо продавать/покупать, а TP на пивот. Я использовал ObjectGet() чтобы получить линии, т.к. другого способа не нашел. Проблема в том, что если снижается волатильность, то уровни перерисовываются, и что самое главное автоматически меняется и TP. А менятся по ТС не должен. А вот как сделать чтоб TP не менялся? Заранее благодарен за помощь.

corriger l'algorithme de calcul des lignes et du pivot

 
Summer >>:

Vinin, уважаемый) магик то стоит))

extern double Lots=0.1;

int start()
{

bool ret;

double Ind11=iMA(NULL,0,12,0,0,0,0);
double Ind12=iMA(NULL,0,12,0,0,0,1);

if(Ind11>Ind12)
{

OrderSend(Symbol(),OP_BUY,Lots,Ask,3,0,0,"",16384,0,Green);

}

if(Ind11<Ind12)
{



for(ic=OrdersTotal()-1;ic>=0;ic--)
{
if(OrderSelect(ic,SELECT_BY_POS,MODE_TRADES)==false) continue;
if (OrderSymbol()==Symbol() && OrderMagicNumber()==16384)
{
if (OrderType()==OP_BUY)
OrderClose(OrderTicket(),OrderLots(),Bid,5,CLR_NONE);

if (OrderType()==OP_SELL)
OrderClose(OrderTicket(),OrderLots(),Ask,5,CLR_NONE);
}}



}

return(0);

}

Donnez NormalizeDouble(Ask, Digits) à la place de Ask, NormalizeDouble(Bid, Digits) à la place de Bid, et cela fonctionnera.