Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
Espero que esta pantalla muestre exactamente lo que quiero :)
Si está usando HighLowCandle > 0, entonces se abstiene en una vela cerrada.
Establezca el UseBarDirection a true y compruébelo entonces
Sí, lo tengo en la configuración. Aquí están mis ajustes lo que he probado
Tal vez en el código hay algo mal. ¿Podría comprobarlo?
¿Existe alguna forma sencilla de acceder a los datos del indicador de MT5 para su visualización en el gráfico? Sé que cuando MT5 salió por primera vez el código era bastante complicado para un simple indicador y espero que con la última versión de MT5 algo haya cambiado.
Por ejemplo, si quiero mostrar un cruce de MA en la visualización del objeto del gráfico con MT4, utilizo
double slow_MA = iMA(Symbol(),0,100,0,MA_MODE,MA_PRICE,0);
double fast_MA = iMA(Symbol(),0,35,0,MA_MODE,MA_PRICE,0);
si (ma_fast > ma_slow){ col = clrLime;}
si (ma_fast < ma_slow) {col = clrRed;}
si no {col = clrGray;}
¿hay algún equivalente sencillo en MT5? ¿o tengo que escribir incontables líneas de código para acceder a esta información?
Hola cja
En primer lugar a las gracias por su visita de vuelta TSD en 2017 a continuación, Feliz año nuevo a usted como usted es muy raro visitar tsd pero muy viejo, senior y miembro experto :)
saludos
Estoy tratando de cambiar esta rutina de Trailing con Paso.
Necesito moverme desde el stoploss y no desde la entrada de compra/venta...
por ejemplo: (operación de COMPRA)
StopLoss: 250 (en puntos)
Traling :150 (en puntos)
TralingStep: 50 (en puntos)
===========
BUY Entrada=> 1000
StopLoss=>750 (=1000-250)
================
Primer cambio de precio) El precio se movió a: 1150
(No necesito esto.. ;-( )
El trailing mueve mi stoploss a "buy_entrance" =>1000
(Pero necesito esto)
El trailing debería mover mi stoploss a => 800 (=StopLoss+Trailingstep)
Segundo cambio de precio) El precio se mueve a: 1300
El trailing debe moverse a=> 950 (=StopLoss+Trailingstep)
el código actual usa trailing y trailing step pero necesito modificarlo...
cuando (el precio se mueve) el trailing en puntos es alcanzado y usa trailing step para mover el stop loss pero el código actual
mueve el stoploss al punto de entrada de la operación (y no quiero esto)
Necesito:
cuando se abra la COMPRA: si se alcanza el trailing , el paso de trailing debería restarse del stoploss actual. (NewStopLoss = LastStoploss - TrailingStep)
cuando se abre la VENTA: si se alcanza el trailing , se debe sumar el trailing step del stoploss actual. (NewStopLoss = LastStoploss +TrailingStep)
#include <Trade/SymbolInfo.mqh>
#include <Trade/PositionInfo.mqh>
CTrade Trade;
CSymbolInfo Sym;
CPositionInfo Pos;
int Trailing = 150;
int TrailingStep = 25;
void fSimpleTrailingStep(){ //mt5
if(Trailing<=0){
return;
}
if(!Pos.Select(_Symbol)){
return;
}
if(!Sym.RefreshRates()){
return;
}
double nsl,tmsl,psl,newstop;
switch(Pos.PositionType()){
case POSITION_TYPE_BUY:
nsl=Sym.NormalizePrice(Sym.Bid()-_Point*Trailing);
if(nsl>=Sym.NormalizePrice(Pos.PriceOpen())){
//if(nsl>Sym.NormalizePrice(Pos.StopLoss())){
if(nsl>=Sym.NormalizePrice(Pos.StopLoss()+_Point*TrailingStep)){ //////////////
//tmsl=Sym.NormalizePrice(Sym.Bid()-_Point*Sym.StopsLevel());
tmsl=Sym.NormalizePrice(Sym.Bid()-_Point*Sym.StopsLevel());
if(nsl<tmsl){
//Trade.PositionModify(_Symbol,nsl,Pos.TakeProfit());
newstop=Sym.NormalizePrice(Pos.StopLoss()+_Point*TrailingStep);
Trade.PositionModify(_Symbol,newstop,Pos.TakeProfit());
Print ("(BUY) Trailing :"+Pos.StopLoss());
}
}
}
break;
case POSITION_TYPE_SELL:
nsl=Sym.NormalizePrice(Sym.Ask()+_Point*Trailing);
//if(nsl<=Sym.NormalizePrice(Pos.PriceOpen())){
if(nsl<=Sym.NormalizePrice(Pos.PriceOpen())-_Point*TrailingStep){ //////////////
psl=Sym.NormalizePrice(Pos.StopLoss());
if(nsl<psl || psl==0){
tmsl=Sym.NormalizePrice(Sym.Ask()+_Point*Sym.StopsLevel());
if(nsl>tmsl){
newstop=Sym.NormalizePrice(Pos.StopLoss()-_Point*TrailingStep);
//Trade.PositionModify(_Symbol,nsl,Pos.TakeProfit());
Trade.PositionModify(_Symbol,newstop,Pos.TakeProfit());
Print ("(SELL) Trailing :"+Pos.StopLoss());
}
}
}
break;
}
}
Estoy tratando de cambiar esta rutina de Trailing con Paso.
Necesito moverme desde el stoploss y no desde la entrada de compra/venta...
por ejemplo: (operación de COMPRA)
StopLoss: 250 (en puntos)
Traling :150 (en puntos)
TralingStep: 50 (en puntos)
===========
Entrada de COMPRA=> 1000
StopLoss=>750 (=1000-250)
================
Primer cambio de precio) El precio se ha movido a: 1150
(No necesito esto.. ;-( )
Trailing está moviendo mi stoploss a "buy_entrance" =>1000
(Pero necesito esto)
Trailing debería mover mi stoploss a => 800 (=StopLoss+Trailingstep)
Segundo cambio de precio) El precio se ha movido a: 1300
El trailing se mueve a=> 950 (=StopLoss+Trailingstep)
el código actual utiliza trailing y trailingtep pero necesito modificarlo...
cuando (el precio se mueve) se alcanza el trailing en puntos y se usa el trailing step para mover el stop loss pero el código actual
mueve el stoploss al punto de entrada de la operación (y no quiero esto)
Necesito:
cuando se abre la COMPRA: si se alcanza el trailing, el paso de trailing debería restarse del stoploss real. (NewStopLoss = LastStoploss - TrailingStep)
cuando se abre la venta: si se alcanza el trailing, el paso de trailing debe añadirse al stoploss actual. (NewStopLoss = LastStoploss +TrailingStep)
#include <Trade/SymbolInfo.mqh>
#include <Trade/PositionInfo.mqh>
CTrade Trade;
CSymbolInfo Sym;
CPositionInfo Pos;
int Trailing = 150;
int TrailingStep = 25;
void fSimpleTrailingStep(){ //mt5
if(Trailing<=0){
return;
}
if(!Pos.Select(_Symbol)){
return;
}
if(!Sym.RefreshRates()){
return;
}
double nsl,tmsl,psl,newstop;
switch(Pos.PositionType()){
case POSITION_TYPE_BUY:
nsl=Sym.NormalizePrice(Sym.Bid()-_Point*Trailing);
if(nsl>=Sym.NormalizePrice(Pos.PriceOpen())){
//if(nsl>Sym.NormalizePrice(Pos.StopLoss())){
if(nsl>=Sym.NormalizePrice(Pos.StopLoss()+_Point*TrailingStep)){ //////////////
//tmsl=Sym.NormalizePrice(Sym.Bid()-_Point*Sym.StopsLevel());
tmsl=Sym.NormalizePrice(Sym.Bid()-_Point*Sym.StopsLevel());
if(nsl<tmsl){
//Trade.PositionModify(_Symbol,nsl,Pos.TakeProfit());
newstop=Sym.NormalizePrice(Pos.StopLoss()+_Point*TrailingStep);
Trade.PositionModify(_Symbol,newstop,Pos.TakeProfit());
Print ("(BUY) Trailing :"+Pos.StopLoss());
}
}
}
break;
case POSITION_TYPE_SELL:
nsl=Sym.NormalizePrice(Sym.Ask()+_Point*Trailing);
//if(nsl<=Sym.NormalizePrice(Pos.PriceOpen())){
if(nsl<=Sym.NormalizePrice(Pos.PriceOpen())-_Point*TrailingStep){ //////////////
psl=Sym.NormalizePrice(Pos.StopLoss());
if(nsl<psl || psl==0){
tmsl=Sym.NormalizePrice(Sym.Ask()+_Point*Sym.StopsLevel());
if(nsl>tmsl){
newstop=Sym.NormalizePrice(Pos.StopLoss()-_Point*TrailingStep);
//Trade.PositionModify(_Symbol,nsl,Pos.TakeProfit());
Trade.PositionModify(_Symbol,newstop,Pos.TakeProfit());
Print ("(SELL) Trailing :"+Pos.StopLoss());
}
}
}
break;
}
}
Estimado MLADEN
Timmy y yo estamos tratando de jugar (copiar/pegar) con un simple EA con venta/compra básica en el cambio de tendencia, basado en "promedios - mtf - alertas 8.7", ya que ambos somos nulos en materia de codificación, plz ayuda y guía, cómo codificar (icustom) para este promedios ver.
saludos
double Averages_trend_current = iCustom(NULL,0,"averages - mtf - alerts 8.7",PERIOD_CURRENT,AveragePeriod,AveragePrice,AverageMethod,DoubleSmoothedAverage,AdaptiveAverage,FilterPeriod,FilterOn,BarToUse);
double Averages_trend_previous = iCustom(NULL,0,"averages - mtf - alerts 8.7",PERIOD_CURRENT,AveragePeriod,AveragePrice,AverageMethod,DoubleSmoothedAverage,AdaptiveAverage,FilterPeriod,FilterOn,BarToUse+1);
Estimado MLADEN
Timmy y yo estamos tratando de jugar (copiar/pegar) con un simple EA con venta/compra básica en el cambio de tendencia, basado en "promedios - mtf - alertas 8.7", ya que ambos somos nulos en materia de codificación, plz ayuda y guía, cómo codificar (icustom) para este promedios ver.
saludos
double Averages_trend_current = iCustom(NULL,0,"averages - mtf - alerts 8.7",PERIOD_CURRENT,AveragePeriod,AveragePrice,AverageMethod,DoubleSmoothedAverage,AdaptiveAverage,FilterPeriod,FilterOn,BarToUse);
double Averages_trend_previous = iCustom(NULL,0,"averages - mtf - alerts 8.7",PERIOD_CURRENT,AveragePeriod,AveragePrice,AverageMethod,DoubleSmoothedAverage,AdaptiveAverage,FilterPeriod,FilterOn,BarToUse+1);
Algo está mal con los buffers , he utilizado el buffer : 2 para la compra y ambos buffer 3 y 4 para la venta , pero todo se dispara todo el tiempo , trató de utilizar sólo el buffer 2 para la compra y el buffer 3 para la venta , pero lo mismo sucedió .
No hay nada malo con los buffers. Utilice el buffer 9 : 1 para la tendencia alcista, -1 para la tendencia bajista
Estimado Sr. Mladen,
Necesito un indicador de histograma para mi estrategia de comercio, en este momento utilizo el indicador XB4 y el indicador de estrategia Bandit. pero no tienen alerta y notificación enviar al correo electrónico oa mi androide MT4.
¿tiene modificado el indicador XB4d ndicator que tiene alerta enviar correo electrónico y la notificación que enviar a android mobil phone. si histograma cambiar el color azul a rojo, o rojo a azul en la primera barra.
y el histograma de la tendencia de la sesión del indicador del sistema Bandid, que cambia el color de azul a rojo, o rojo a azul, el primer color de cambio de tendencia.
podría ayudarme sobre este indicador Sr. Mladen.
saludos,
Samuel