![MQL5 - Linguagem para estratégias de negociação inseridas no terminal do cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Obrigado MrPip
Eu chego principalmente de onde você está vindo, eu o darei há pouco e perguntarei novamente se fico preso.
saúde
Correções em vermelho abaixo.Robert
Obrigado Robert... que ajudou...![](https://c.mql5.com/forextsd/smiles/teeth_smile.png)
Contagem regressiva de barras com os indiciadores do MTF
MTF = indicadores de múltiplos períodos de tempo
BarCountDownInSec() duplo
{
duplo g;
g=Tempo[0]+Periodo()*60-TempoCorrente();
retorno(g);
}
A função acima dá a segunda contagem regressiva para barras no gráfico atual. Assim, se colocado em um gráfico de 5 minutos, ele mostrará a segunda contagem regressiva para cada barra de 5 minutos.
P: Como faço para obter uma contagem regressiva de segundos para uma barra de 15 minutos (ou seja, 3x barras de 5 min), quando estou em um gráfico de 5 min, então uma contagem regressiva de 15 minutos das 6.00 às 6.15. depois 6.15 às 6.30, enquanto estou em um gráfico de 5 min ???
Problema com minha programação (BUG)
Hi,
Alguém pode ajudar a limpar o bug para mim? Eu estava quase lá, só que o histograma do desenho não aparece a menos que eu volte a compilar o código.
Por favor, ajudem-me!!! Por favor, por favor, por favor!
Cumprimentos![](https://c.mql5.com/forextsd/smiles/cry_smile.png)
problema do icustom
Qual é o nome da cadeia deste índio que eu deveria usar para uma parte iCustom de uma EA
Eu tentei
MT4-LevelStop-Reverse-vBO-4
MT4-LevelStop-Reverse-
MT4-LevelStop-Reverse
vBO-4
vB0.4
vtsbh2483-
MT4-LevelStop-Reverse-". + INDICADOR_VERSÃO + "(
Portanto, não tenho a menor idéia do que fazer a seguir.
ou preciso colocar no ATRMode,Modo Manual etc Nomes de Cordas
Qualquer ajuda seria ótima
Alguém pode ver o erro? Eu não consigo ver onde está o erro neste código. Eu continuo recebendo. Qualquer ajuda para apontar isto seria ótimo. Obrigado
Variável LongSig não definida
//+------------------------------------------------------------------+
//| Calcular posições abertas |
//+------------------------------------------------------------------+
int CalculateCurrentOrders() {
compra=0; vende=0;
símbolo de corda=Símbolo();
//----
for(int i=0;i<OrdersTotal();i++)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==falso) continue;
if(OrderSymbol()==Symbol() && OrderMagicNumber()==expertId)
{
if(OrderType()==OP_BUY || OrderType()==OP_BUYSTOP) compra++;
if(OrderType()==OP_SELL || OrderType()==OP_SELLSTOP) vende+++;
}
}
//---- volume de pedidos de devolução
if(compra>0) return(compra);
caso contrário, retorna(-sells);
}
//+------------------------------------------------------------------+
//| Verifique as condições de pedidos em aberto |
//+------------------------------------------------------------------+
verificação de sinais nulos() {
buyysig=false;
vendeig=falso;
closebuy=false;
closesell=false;
duplo MOM = iCustom (NULL,0, "Momentum-ZL",MOMPeriod,0,shift);
duplo SRL = iCustom (NULL,0, "MT4-LevelStop-Reverse-vBO-4",UseATRMode,NonATRStopPips,ATRPeriod, ATRMultiplier,ATRSmoothing,UpArrowColor,DnArrowColor,ArrowDistance,233);
SRS duplo = iCustom (NULL,0, "MT4-LevelStop-Reverse-vBO-4",UseATRMode,NonATRStopPips,ATRPeriod,ATRMultiplier,ATRSmoothing,UpArrowColor,DnArrowColor,ArrowDistance,234);
duplo QQE_RsiMa = iCustom(NULL,0, "QQE",0,shift);
duplo QQE_TrLevelSlow = iCustom(NULL,0, "QQE",1, turno);
duplo QQE_RsiMaPrev = iCustom(NULL,0, "QQE",0,turno + 1);
duplo QQE_TrLevelSlowPrev = iCustom(NULL,0, "QQE", 1, turno + 1);
duplo Pivot = iCustom(NULL,0, "Pivot Points Multitimeframe",midpivots,Fhr,diário,semanal,mensal,1,turno)
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 LongSig3 = SRL>Pivot;
bool ShortSig3 = SRS<Pivot;
buysig = LongSig && LongSig2 && LongSig3;
sellig = ShortSig && ShortSig2 && ShortSig3;
closebuy=sellsig;
closesell=buysig;
}
CheckForOpen() {
se (último==Tempo[0]) voltar;
int res,ord;
entrada dupla,stop,profit;
ord=CalculateCurrentOrders();
if (ord!=0) CheckForClose();
ord=CalculateCurrentOrders();
//---- condições de compra
se (compra<ConsecutiveTrades &&buysig) {
res=OpenAtMarket(OP_BUY,Lots);
if (res<0) Print("Error opening BUY order : "Descrição do Erro(GetLastError()));
else last=Time[0];
}
//---- condições de venda
if (-sells<ConsecutiveTrades && sellig) {
res=OpenAtMarket(OP_SELL,Lots);
se (res<=0) Imprimir("Erro ao abrir ordem de venda: "Descrição do Erro(GetLastError()));
else last=Time[0];
}
}
int OpenAtMarket(int mode,double lot) {
int res,tr,col;
duplo preço aberto,sl,tp;
try=0;
enquanto (res<=0 && tries<OrderTriesNumber) {
tr=0; enquanto (tr<5 && !IsTradeAllowed()) { tr++; Sleep(2000); }
RefreshRates();
if (mode==OP_SELL) {
openprice=Licite;
col=Red;
} else {
//openprice=nd(Ask);
openprice=Ask;
col=azul;
}
res=OrderSend(Symbol(),mode,lot,openprice,slippage,sl,tp,EAName+expertId,expertId,0,col);
try+++;
}
retorno(res);
}
TI fixo
Tente o primeiro da sua lista com um número zero 0 em vez de uma letra O para vB0-4.
Robert
Qual é o nome da cadeia deste índio que eu deveria usar para uma parte iCustom de uma EA
Eu tentei
MT4-LevelStop-Reverse-vBO-4
MT4-LevelStop-Reverse-
MT4-LevelStop-Reverse
vBO-4
vB0.4
vtsbh2483-
MT4-LevelStop-Reverse-". + INDICADOR_VERSÃO + "(
Portanto, não tenho a menor idéia do que fazer a seguir.
ou preciso colocar no ATRMode,Modo Manual etc Nomes de Cordas
Qualquer ajuda seria ótimaObrigado Sr. Pips
Ordenado
Correções em vermelho abaixo.Robert
tentei isso, mas parece que não funciona... só quero uma profissão por dia...
{
se (OrderSelect(a,SELECT_BY_POS,MODE_TRADES) == verdadeiro)
{
if (OrderSymbol()== Symbol() && OrderMagicNumber()== Magic_Number)
{
if (TimeDay(OrderOpenTime()) >= TimeDay(TimeCurrent())) Comércio = falso;
if (TimeDay(OrderOpenTime()) < TimeDay(TimeCurrent())) Comércio = verdadeiro;
}
}
}tentei isso, mas parece que não funciona... só quero uma profissão por dia...
Usei isto em outros EAs e funciona corretamente.
Verifico se o comércio está fechado hoje em vez de aberto hoje.
A utilização no início é
se (LastTradeClosedToday()) retornar(0);
// codifique aqui para abrir novos negócios
//+------------------------------------------------------------------+
//| LastTradeClosedToday |
//| Verifique o Histórico para ver se o último comércio fechou hoje |
//+------------------------------------------------------------------+
Bool LastTradeClosedToday()
{
int cnt, total;
bool Fechado;
total = HistóriaTotal();
para (cnt = total - 1; cnt >= 0; cnt--)
{
OrderSelect (cnt, SELECT_BY_POS, MODE_HISTORY);
if(OrderSymbol()!=Symbol()) continua;
if(OrderMagicNumber() != MagicNumber) continue;
Fechado = falso;
if (OrderType() == OP_BUY)
{
if (TimeDay(OrderCloseTime()) == TimeDay(TimeCurrent()))
{
Fechado = verdadeiro;
}
cnt = 0;
}
se (OrderType() == OP_SELL)
{
if (TimeDay(OrderCloseTime()) == TimeDay(TimeCurrent()))
{
Fechado = verdadeiro;
}
cnt = 0;
}
}
retorno (Fechado);
}