![MQL5 - Lenguaje de estrategias comerciales para el terminal de cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
Hola, ¿alguien tiene idea de cómo ajustar la URL de un marcador para que abra siempre la última página del foro?
¿No muestra ya los hilos más nuevos (hilos con los mensajes más recientes) automáticamente cuando llegas a TSD?
Sr. Mladen, o Mrtools, ¿podríamos tener algunas alertas sobre este indicador? ¿Sobre el cruce de cero y el cambio de color?
Gracias
Jozy
Hola , Sr. herramientas y mladen
¿podríais hacer esto a MTF y alertar del paso por cero?
gracias
Sr. Mladen, o Mrtools, ¿podríamos tener algunas alertas en este indicador? ¿Sobre el cruce de cero y el cambio de color?
Gracias
JozyHola Jozy, creo que te has olvidado de publicar el indicador.
¿No muestra ya los hilos más nuevos (hilos con los mensajes más recientes) automáticamente cuando llegas a TSD?
Lo siento. Creo que no me he expresado con claridad. No voy a la página forex-tsd.com porque tengo guardados algunos marcadores de hilos que me interesan como este "multiple-timeframe-indicators" y quería preguntar si alguien sabe cómo ajustar la URL de este marcador para que cuando lo pulse, se abra automáticamente la última página de este hilo en lugar de la página del momento en que guardé el marcador.
Más bien por accidente funcionó una vez así, pero luego tengo un nuevo ordenador y ahora no me acuerdo. Estaba pensando que quizás alguien pueda conocer la solución. Si no es así, no hay problema ya que no quiero entorpecer más este hilo. Simplemente no sabía dónde más publicar mi pregunta.
Estimados miembros senior
¿es posible tener este indicador de bandas de bollinger ajustable a 2 y 3 desviaciones? actualmente está establecido en 1 desviación y he intentado cambiar la configuración pero entonces deja de mostrar cualquier flecha de alerta
Gracias
//+------------------------------------------------------------------+
//| Bands.mq4 ||||||||
//| |
//| |
//+------------------------------------------------------------------+
#property indicator_chart_window
#property indicator_buffers 5
#property indicator_color1 LightSeaGreen
#property indicator_color2 LightSeaGreen
#propiedad indicator_color3 LightSeaGreen
#indicator_color4 LimeGreen
#propiedad indicator_color5 Naranja
//
//
//
//
//
extern string TimeFrame = "marco temporal actual";
extern int BandsLength = 4;
extern double BandsDeviation = 1.0;
extern int AppliedPrice = 0;
extern int BandsMaMode = 0;
extern string note = "activar la alerta = true; desactivar = false";
extern bool alertsOn = true
extern bool alertsOnCurrent = true
extern bool alertsMessage = true
extern bool alertsSound = true
extern bool alertsNotify = false
extern bool alertsEmail = false
extern string soundFile = "alert2.wav";
extern int arrowthickness = 1;
//
//
//
//
//
double Ma[];
doble UpMa[];
doble DnMa[];
double CrossUp[];
double CrossDn[];
double trend[];
//
//
//
//
//
string indicatorFileName;
bool calcularValor;
bool returnBars;
int timeFrame;
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
//
//
//
//
//
int init()
{
IndicatorBuffers(6);
IndicatorDigits(Dígitos);
SetIndexBuffer(0,Ma);
SetIndexBuffer(1,UpMa);
SetIndexBuffer(2,DnMa);
SetIndexBuffer(3,CrossUp); SetIndexStyle(3,DRAW_ARROW,0,arrowthickness); SetIndexArrow(3,233);
SetIndexBuffer(4,CrossDn ); SetIndexStyle(4,DRAW_ARROW,0,arrowthickness); SetIndexArrow(4,234);
SetIndexBuffer(5,trend);
//
//
//
//
//
indicatorFileName = WindowExpertName();
returnBars = TimeFrame=="returnBars"; if (returnBars) return(0);
calculateValue = TimeFrame=="calculateValue"; if (calculateValue) return(0);
timeFrame = stringToTimeFrame(TimeFrame);
IndicatorShortName(timeFrameToString(timeFrame)+" Bandas de Bollinger Alertas Flechas");
return(0);
}
//
//
//
//
//
int deinit() { return(0); }
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
//
//
//
//
//
int inicio()
{
int barras_contadas=IndicadorContado();
int i,límite;
if(counted_bars<0) return(-1);
if(barras_contadas>0) barras_contadas--;
limit=MathMin(Bars-1,Bars-counted_bars-1);
if (returnBars) { Ma[0] = limit+1; return(0); }
//
//
//
//
//
if (calculateValue || timeFrame==Period())
{
for (i = límite; i >= 0; i--)
{
double StdDev = iStdDev(NULL,0,BandsLength,0,BandsMaMode,AppliedPrice,i);
Ma = iMA(NULL,0,BandsLength,0,BandsMaMode,AppliedPrice,i);
UpMa = Ma + (StdDev*BandsDeviation);
DnMa = Ma - (StdDev*BandsDeviation);
tendencia = 0;
si (Close>UpMa) trend = 1;
si (Close<DnMa) trend =-1;
//
//
//
//
//
CrossUp = EMPTY_VALUE;
CrossDn = EMPTY_VALUE;
if (trend!= trend)
if (trend == 1 && trend != 3) CrossDn = High + iATR(NULL,0,20,i)/2;
if (trend == -1 && trend !=-3) CrossUp = Low - iATR(NULL,0,20,i)/2;
}
manageAlerts();
return(0);
}
//
//
//
//
//
limit = MathMax(limit,MathMin(Bars-1,iCustom(NULL,timeFrame,indicatorFileName, "returnBars",0,0)*timeFrame/Period()));
for(i=limit; i>=0; i--)
{
int y = iBarShift(NULL,timeFrame,Time);
Ma = iCustom(NULL,timeFrame,indicatorFileName, "calculateValue",BandsLength,BandsDeviation,AppliedPrice,BandsMaMode,0,y);
UpMa = iCustom(NULL,timeFrame,indicatorFileName, "calculateValue",BandsLength,BandsDeviation,AppliedPrice,BandsMaMode,1,y);
DnMa = iCustom(NULL,timeFrame,indicatorFileName, "calculateValue",BandsLength,BandsDeviation,AppliedPrice,BandsMaMode,2,y);
trend = iCustom(NULL,timeFrame,indicatorFileName, "calculateValue",BandsLength,BandsDeviation,AppliedPrice,BandsMaMode,5,y);
CrossUp = EMPTY_VALUE;
CrossDn = EMPTY_VALUE;
if (trend!= trend)
if (trend == 1 && trend != 1) CrossDn = High + iATR(NULL,0,20,i)/2;
if (trend == -1 && trend !=-1) CrossUp = Low - iATR(NULL,0,20,i)/2;
}
manageAlerts();
return(0);
}
//
//
//
//
//
void manageAlerts()
{
if (!calculateValue && alertsOn)
{
if (alertsOnCurrent)
int whichBar = 0;
else whichBar = 1; whichBar = iBarShift(NULL,0,iTime(NULL,timeFrame,whichBar));
if (trend[whichBar] != trend[whichBar+1])
{
if (trend[whichBar+1] == 1 && trend[whichBar] != 1) doAlert(whichBar, "sell");
if (trend[whichBar+1] == -1 && trend[whichBar] !=-1) doAlert(whichBar, "buy");
}
}
}
//
//
//
//
//
void doAlert(int forBar, string doWhat)
{
static string previousAlert="nada";
static datetime previousTime;
mensaje de cadena;
if (previousAlert != doWhat || previousTime != Time[forBar]) {
previousAlert = doWhat;
previousTime = Time[forBar];
//
//
//
//
//
message = StringConcatenate(Symbol()," at ",TimeToStr(TimeLocal(),TIME_SECONDS)," - ",timeFrameToString(Period())+" Bollinger Bands ",doWhat);
if (alertsMessage) Alert(message);
if (alertsNotify) SendNotification(mensaje);
if (alertsEmail) SendMail(StringConcatenate(Symbol()," Bollinger Bands "),message);
if (alertsSound) PlaySound(soundFile);
}
}
//+-------------------------------------------------------------------
//|
//+-------------------------------------------------------------------
//
//
//
//
//
string sTfTable[] = {"M1", "M5", "M15", "M30", "H1", "H4", "D1", "W1", "MN"};
int iTfTable[] = {1,5,15,30,60,240,1440,10080,43200};
//
//
//
//
//
int stringToTimeFrame(string tfs)
{
tfs = StringUpperCase(tfs);
for (int i=ArraySize(iTfTable)-1; i>=0; i--)
if (tfs==sTfTable || tfs==""+iTfTable) return(MathMax(iTfTable,Period());
return(Periodo());
}
//
//
//
//
//
string timeFrameToString(int tf)
{
for (int i=ArraySize(iTfTable)-1; i>=0; i--)
if (tf==iTfTable) return(sTfTable);
return("");
}
//
//
//
//
//
stringUpperCase(string str)
{
string s = str;
for (int length=StringLen(str)-1; length>=0; length--)
{
int tchar = StringGetChar(s, longitud);
if((tchar > 96 && tchar 223 && tchar < 256))
s = StringSetChar(s, length, tchar - 32);
else if(tchar > -33 && tchar < 0)
s = StringSetChar(s, length, tchar + 224);
}
return(s);
}
//------------------------------------------------------------------
//
//------------------------------------------------------------------
//
//
//
//
//
Hola Jozy, creo que se olvidó de publicar el indicador.
Lo siento mucho. Este es el indicador:
mr tools o mladen,
¿podrían por favor hacer este indicador a MTF?
Saludos cordiales,
marko
Hola,
Tengo este indicador Fantail y sería genial si usted podría hacer que sea MTF?
gracias por su ayuda
Sr. Mladen, o Mrtools, ¿podríamos tener algunas alertas en este indicador? ¿Sobre el cruce de cero y el cambio de color?
Gracias
JozyJozy, añadí opciones para alertas en el cambio de color/pendiente y o para el cruce de cero.