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
Gracias MrPip
Entiendo en gran parte por donde vas, le daré hace y volveré a preguntar si me atasco.
saludos
Correcciones en rojo abajo. Robert
Gracias Robert .. que ayudó ..
Cuenta atrás de barras con indicadores MTF
MTF = indicadores de marco de tiempo múltiple
doble BarCountDownInSec()
{
doble g;
g=Tiempo[0]+Periodo()*60-TiempoActual();
return(g);
}
La función anterior da la segunda cuenta atrás para las barras en el gráfico actual. Así que si se coloca en un gráfico de 5 minutos, mostrará la segunda cuenta regresiva para cada barra de 5 minutos.
P: ¿Cómo obtengo la cuenta regresiva de segundos para una barra de 15 minutos (es decir, 3 barras de 5 minutos), cuando estoy en un gráfico de 5 minutos, por lo que una cuenta regresiva de 15 minutos de 6.00 a 6.15. luego 6.15 a 6.30, mientras estoy en un gráfico de 5 minutos?
Problema con mi programación (BUG)
Hola,
Alguien puede ayudarme a aclarar el bug. Ya casi lo tengo, solo que el histograma no aparece a menos que vuelva a compilar el código.
¡¡¡Por favor, ayuda!!! Por favor, por favor, por favor
Saludos
Problema de icustom
¿Cuál es el nombre de la cadena de este indi que debo utilizar para una parte iCustom de un EA
He probado con
MT4-LevelStop-Reverse-vBO-4
MT4-LevelStop-Reverse-
MT4-LevelStop-Reverse
vBO-4
vB0.4
vtsbh2483-
MT4-LevelStop-Reverse-" + INDICATOR_VERSION + "(
Así que no tengo ni idea de qué hacer a continuación.
o tengo que poner en el ATRMode,Manual Mode etc String Names
Cualquier ayuda sería genial
¿Alguien puede ver el error? No puedo ver dónde está el error en este código. Sigo recibiendo. Cualquier ayuda para señalarlo sería genial. Gracias
LongSig Variable no definida
//+------------------------------------------------------------------+
//| Calcula las posiciones abiertas |||.
//+------------------------------------------------------------------+
int CalcularPropiedadesActuales() {
buys=0; sells=0;
string symbol=Símbolo();
//----
for(int i=0;i<TotalPedidos();i++)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false) continuar;
if(OrderSymbol()==Symbol() && OrderMagicNumber()==expertId)
{
if(OrderType()==OP_BUY || OrderType()==OP_BUYSTOP) buys++;
if(OrderType()==OP_SELL || OrderType()==OP_SELLSTOP) vende++;
}
}
//---- devuelve el volumen de las órdenes
if(buys>0) return(buys);
si no, return(-sells);
}
//+------------------------------------------------------------------+
//| Comprueba las condiciones de las órdenes abiertas ||.
//+------------------------------------------------------------------+
void CheckForSignals() {
buysig=false;
sellsig=false;
closebuy=false;
closesell=false;
double MOM = iCustom (NULL,0, "Momentum-ZL",MOMPeriod,0,shift);
double SRL = iCustom (NULL,0, "MT4-LevelStop-Reverse-vBO-4",UseATRMode,NonATRStopPips,ATRPeriod, ATRMultiplier,ATRSmoothing,UpArrowColor,DnArrowColor,ArrowDistance,233);
double SRS = iCustom (NULL,0, "MT4-LevelStop-Reverse-vBO-4",UseATRMode,NonATRStopPips,ATRPeriod, ATRMultiplier,ATRSmoothing,UpArrowColor,DnArrowColor,ArrowDistance,234);
double QQE_RsiMa = iCustom(NULL,0, "QQE",0,shift);
double QQE_TrLevelSlow = iCustom(NULL,0, "QQE", 1, shift);
double QQE_RsiMaPrev = iCustom(NULL,0, "QQE",0,shift + 1);
double QQE_TrLevelSlowPrev = iCustom(NULL,0, "QQE", 1, shift + 1);
double Pivot = iCustom (NULL,0, "Pivot Points Multitimeframe",midpivots,Fhr,daily,weekly,monthly,1,shift)
bool LongSig = QQE_RsiMaPrev QQE_TrLevelSlow >50.0;
bool ShortSig = QQE_RsiMaPrev > QQE_TrLevelSlowPrev && QQE_RsiMa < QQE_TrLevelSlow<50.0;
bool LongSig2 = MOM>0.0;
bool ShortSig2 = MOM<0.0;
bool SigLarga3 = SRL>Pivot;
bool SigCorta3 = SRS<Pivot;
buysig = LongSig && LongSig2 && LongSig3;
sellsig = ShortSig && ShortSig2 && ShortSig3;
closebuy=sellsig;
closesell=buysig;
}
void CheckForOpen() {
if (last==Time[0]) return;
int res,ord;
doble entrada,stop,beneficio;
ord=CalcularOrdenesactuales();
if (ord!=0) CheckForClose();
ord=CalcularOrdenesActualess();
//---- condiciones de compra
if (buys<ConsecutiveTrades && buysig) {
res=OpenAtMarket(OP_BUY,Lots);
if (res<0) Print("Error al abrir una orden de COMPRA : ",ErrorDescription(GetLastError()));
si no res=Tiempo[0];
}
//---- condiciones de venta
if (-sells<ConsecutiveTrades && sellsig) {
res=OpenAtMarket(OP_SELL,Lots);
if (res<=0) Print("Error al abrir la orden SELL: ",ErrorDescription(GetLastError()));
si no, last=Time[0];
}
}
int OpenAtMarket(int modo,double lote) {
int res,tr,col;
double openprice,sl,tp;
tries=0;
while (res<=0 && tries<OrderTriesNumber) {
tr=0; while (tr<5 && !IsTradeAllowed()) { tr++; Sleep(2000); }
RefreshRates();
if (mode==OP_SELL) {
openprice=Bid;
col=Rojo;
} else {
//openprice=nd(Ask);
openprice=Ask;
col=Azul;
}
res=OrderSend(Symbol(),mode,lot,openprice,slippage,sl,tp,EAName+expertId,expertId,0,col);
intenta++;
}
return(res);
}
TI fijo
Pruebe el primero de su lista con un número 0 en lugar de una letra O para vB0-4.
Robert
Cuál es el nombre de cadena de este indi que debo usar para una parte iCustom de un EA
He probado
MT4-LevelStop-Reverse-vBO-4
MT4-LevelStop-Reverse-
MT4-LevelStop-Reverse
vBO-4
vB0.4
vtsbh2483-
MT4-LevelStop-Reverse-" + INDICATOR_VERSION + "(
Así que no tengo ni idea de qué hacer a continuación.
o necesito poner los nombres de las cadenas ATRMode, Manual Mode, etc.
Cualquier ayuda sería genialGracias Sr. Pips
Lo he solucionado
Correcciones en rojo a continuación. Robert
He intentado esto pero parece que no funciona... sólo quiero un comercio por día...
{
if (OrderSelect(a,SELECT_BY_POS,MODE_TRADES) == true)
{
if (OrderSymbol()== Symbol() && OrderMagicNumber()== Magic_Number)
{
if (TimeDay(OrderOpenTime()) >= TimeDay(TimeCurrent()) Trade = false;
si (TimeDay(OrderOpenTime()) < TimeDay(TimeCurrent()) Trade = true;
}
}
}He intentado esto pero parece que no funciona... solo quiero una operación por día...
He utilizado esto en otros EAs y funciona correctamente.
Compruebo el comercio cerrado hoy en lugar del abierto hoy.
El uso en el inicio es
if (LastTradeClosedToday()) return(0);
// código aquí para abrir nuevas operaciones
//+------------------------------------------------------------------+
//| LastTradeClosedToday |||
//| Comprueba el historial para ver si la última operación se cerró hoy ||.
//+------------------------------------------------------------------+
bool ÚltimaCesiónCerradaHoy()
{
int cnt, total;
bool Cerrado;
total = HistoryTotal();
for (cnt = total - 1; cnt >= 0; cnt--)
{
OrderSelect (cnt, SELECT_BY_POS, MODE_HISTORY);
if(OrderSymbol()!=Symbol()) continuar;
if(OrderMagicNumber() != MagicNumber) continue;
Cerrado = false;
if (OrderType() = OP_BUY)
{
if (TimeDay(OrderCloseTime()) == TimeDay(TimeCurrent())
{
Cerrado = true;
}
cnt = 0;
}
if (OrderType() = OP_SELL)
{
if (TimeDay(OrderCloseTime()) == TimeDay(TimeCurrent())
{
Cerrado = true;
}
cnt = 0;
}
}
return (Cerrado);
}