Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Flytox : Je ne trouve pas ce code dans ma copie de TrendStrength.
C'est TrendStrength v2.2
Mode de prix personnalisé
Quelqu'un sait-il comment créer un mode de prix personnalisé ? J'utilise l'alerte suivante pour signaler quand le prix (extern int PriceMode = 6 ; //(high+low+close+close)/4) traverse une MA. J'aimerais personnaliser cette alerte en ajoutant un décalage, disons de 1 ou 2 %. Est-ce possible ? Quelque chose comme :
extern int PriceMode = ((high+low+close+close)/4) * 1.01
----------------------------------------------------
#propriété indicator_chart_window
extern int MA1.period =5 ; //Période 5
extern int MA1.shift=0 ;
extern int MA1.method=2 ; //SMMA
extern int lMA1.price=2 ; //MA fixée au sommet de la bougie
extern int sMA1.price=3 ; //MA fixée au niveau le plus bas de la bougie
extern int PriceMode = 6 ; //(high+low+close+close)/4
int cBar,pBarLong,pBarShort ;
int start()
{
cBar = Time[0] ;
if(CheckMACross(1)== 1 && cBar!=pBarLong ) {EmailAlert(1) ; pBarLong=cBar;}
sinon
if(CheckMACross(2)==-1 && cBar!=pBarShort) {EmailAlert(2) ; pBarShort=cBar;}
return(0) ;
}
int CheckMACross(int mode)
{
if(mode==1) int price = lMA1.price ;
sinon
if(mode==2) price = sMA1.price ;
double price1 = iMA(Symbol(),0,1,0,1,PriceMode,1) ;
double ma1 = iMA(Symbole(),0,MA1.period,MA1.shift,MA1.method, price,1) ;
double price0 = iMA(Symbol(),0,1,0,1,PriceMode,0) ;
double ma0 = iMA(Symbole(),0,MA1.period,MA1.shift,MA1.method, price,0) ;
if(ma1 > prix1 && ma0 <= prix0) return( 1) ;
sinon
si ma1 = prix0) return( -1) ;
sinon
return(0) ;
}
{
if(mode == 1) SendMail("Signal for LONG",Symbol()+" Go Long") ; //SendMail
sinon
if(mode == 2) SendMail("Signal for SHORT",Symbol()+" Go Short");//SendMail
}
int lastBAlert = 0 ;
int lastSAlert = 0 ;
void EmailAlert(int mode)
{
if(mode == 2 && lastSAlert < Time[0] )
{
SendMail("Go Short 1",Symbol()+" Go Short 1") ; //SendMail
lastSAlert = Time[0] ;
}
}
Je lance un appel aux experts pour qu'ils viennent à mon aide, j'en ai besoin pour m'aider à construire un EXPERT ADVISER META 4 TRADER pour moi, je serais très reconnaissant si ma demande est accordée.
Des millions de façons de construire un expert, de quelle façon avez-vous pensé ?
Aide sur le code source !
Bonjour à tous
J'ai un EA et je veux ajouter une entrée à celui-ci
Si take profit >= :xx , acheter :xx lot
extern int Deltaopen1 =100 ;
J'ai écrit
si (type == OP_BUY)
{
si (M2.BuyCnt == 0 && OrderTakeProfit() > OrderOpenPrice() + Deltaopen1*point)
{
Buy(Symbol(), GetLots2(), Ask, 0, 0, 0, Magic2) ;
retour ;
}
}
if (type == OP_SELL)
{
si (M2.SellCnt == 0 && OrderTakeProfit() <= OrderOpenPrice() - Deltaopen1*point)
{
Sell(Symbol(), GetLots2(), Bid, 0, 0, 0, Magic2) ;
retour ;
}
}
}
Mais cela ne fonctionne pas,
J'apprécie toute aide.
Merci.
Besoin d'un peu d'aide pour affiner cette EA
J'ai cet EA qui est une version modifiée du "GAPS EA" trouvé ailleurs sur ce forum.
Vous trouverez ci-joint une copie du code.
#property link ""
//---- input parameters
extern int min_gapsize = 1;
extern double lotsize_gap = 5;
extern int MagicNumber = 10;
//----
datetime order_time = 0;
//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int init()
{
//----
return(0);
}
//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
return(0);
}
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start()
{
/*
Thing to be done in future in this program to make it more efficient
and more powerful:
1. Make the dicission of the quantity of lots used according to
the scillators;
2. This program will catch the gaps.
Things to ware of:
1. the spread;
2. excuting the order not on the gap ends a little bit less.
*/
// Defining the variables to decide.
Print("order time", order_time);
double current_openprice = iOpen(Symbol(), 0, 0);
double previous_highprice = iHigh(Symbol(), 0, 1);
double previous_lowprice = iLow(Symbol(), 0, 1);
double point_gap = MarketInfo(Symbol(), MODE_POINT);
int spread_gap = MarketInfo(Symbol(), MODE_SPREAD)+1;
datetime current_time = iTime(Symbol(), 0, 0);
// catching the gap on sell upper gap
if(current_openprice > previous_highprice + (min_gapsize + spread_gap)*point_gap &&
current_time != order_time)
{
int ticket = OrderSend(Symbol(), OP_SELL, lotsize_gap, Bid, 0, 0,
previous_highprice + spread_gap,
"Gapped Up Sell " + Symbol()+ " " +Period()+ "", MagicNumber, 0, Red);
order_time = iTime(Symbol(), 0, 0);
Print("I am inside (sell) :-)", order_time);
//----
if(ticket < 0)
{
Print("OrderSend failed with error #", GetLastError());
}
}
//catching the gap on buy down gap
if(current_openprice < previous_lowprice - (min_gapsize + spread_gap)*point_gap &&
current_time != order_time)
{
ticket = OrderSend(Symbol(), OP_BUY, lotsize_gap, Ask, 0, 0,
previous_lowprice - spread_gap,
"Gapped Down Buy " + Symbol()+ " " +Period()+ "", MagicNumber, 0, Green);
order_time = iTime(Symbol(), 0, 0);
Print("I am inside (buy) :-)", order_time);
if(ticket < 0)
{
Print("OrderSend failed with error #", GetLastError());
}
}
//----
return(0);
}
//+------------------------------------------------------------------+Chaque fois que je le place dans le testeur de stratégie, il n'ouvre pas de transactions. Un rapide coup d'œil au journal m'indique qu'il y a eu beaucoup d'ordres passés. Qu'est-ce que j'ai fait de mal ?
Aide : Question de base sur les histogrammes
C'est probablement très facile et je suis en train d'oublier quelque chose, mais je suis à court de ressources et je ne trouve pas de réponse.
Tout ce que j'essaie de faire, c'est de rappeler la valeur de la barre d'histogramme précédemment dessinée.
Des idées ?
Par exemple, Close[1] indique la dernière barre fermée sur le graphique......
Alors qu'est-ce qui pourrait montrer la dernière barre d'histogramme dessinée sur cet indicateur à fenêtre séparée ?
Merci d'avance pour tout conseil.
-dharsant
C'est probablement très facile et je suis en train d'oublier quelque chose, mais je suis à court de ressources et je ne trouve pas de réponse.
Tout ce que j'essaie de faire, c'est de rappeler la valeur de la barre d'histogramme précédemment dessinée.
Avez-vous une idée ?
Par exemple, Close[1] indique la dernière barre fermée sur le graphique......
Alors qu'est-ce qui pourrait montrer la dernière barre d'histogramme dessinée sur cet indicateur à fenêtre séparée ?
Merci d'avance pour tout conseil.
-dharsantQuel indicateur appelez-vous ? Il suffit de définir le décalage pour appeler la barre précédente.
Exemple, pour une moyenne mobile de la barre courante :
iMA(NULL,0,13,8,MODE_SMMA,PRICE_MEDIAN,0) ;
Pour une moyenne mobile de la barre précédente :
iMA(NULL,0,13,8,MODE_SMMA,PRICE_MEDIAN,1) ;
Le dernier paramètre lors de l'appel d'un indicateur signifie combien de barres à partir de la barre actuelle seront lues.
J'espère que c'est ce que vous recherchiez.
Besoin d'aide pour le codage, s'il vous plaît
J'essaie d'utiliser quelques indicateurs différents dans un ea mais je n'arrive pas à trouver comment les implémenter dans le système. Quelle partie de l'indicateur dois-je utiliser pour dire acheter ou vendre. Comment puis-je intégrer la ligne de direction de la pente dans une partie de l'EA ?
Merci
Beno
Je ne me suis probablement pas bien expliqué.
J'essaie de trouver ce que je dois mettre dans iCustom, c'est ce que j'ai fait ci-dessous.
double SDL=iCustom(NULL,0, "Slope Direction Line",period,method,price)
Et ce que je dois faire pour générer des signaux d' achat et de vente à partir de l'indicateur Slope Direction Line pour mon EA. Voici ce que j'ai fait jusqu'à présent, cela compile mais aucune position n'est générée.
bool Long = TML && SDL && HeikenAshiOpen < HeikenAshiClose && hasOpen < hasClose ;
bool Short = TMS && SDL && HeikenAshiOpen > HeikenAshiClose && hasOpen > hasClose ;
Toute aide serait la bienvenue
Cheers
Beno
Tout d'abord, l'appel iCustom a besoin de deux arguments supplémentaires à la fin, à savoir à partir de quel tampon d'indicateur lire, et à partir de quel index lire.
Deuxièmement, "SDL" est un nombre double, donc mettre simplement "SDL" comme condition montre une certaine confusion ; peut-être que cela compile comme "SDL != 0", et peut-être que c'est ce que cela signifie.