O indicador tem 4 linhas horizontais - 2 delas trabalhando a partir do indicador Heiken_Ashi
2 níveis dos quais você pode comprar ou vender. Quando eles cruzam o vermelho, você recebe um sinal -quando eles cruzam o azul, você recebe outro sinal
-------------
quando está no meio (entre as linhas (vermelho e azul) os sinais não funcionam - funcionarão, assim como saem para ambos os lados
O indicador tem 4 linhas horizontais - 2 delas trabalhando a partir do indicador Heiken_Ashi
2 níveis dos quais você pode comprar ou vender. Quando eles cruzam o vermelho, você recebe um sinal -quando eles cruzam o azul, você recebe outro sinal
-------------
quando localizados no meio (entre as linhas (vermelho e azul) os sinais não funcionam - funcionarão, como indo em qualquer direção
Anexei o Conselheiro Especialista a este Indicador
Você precisa instalar o Indicador no gráfico e depois instalar o Expert Advisor no mesmo gráfico.
---------------------
depois que uma posição foi aberta, o indicador foi apagado. depois de um tempo, eu defino o indicador novamente (como verificar o trabalho do Perito)
---------------
quando um sinal dispara, abre uma posição e apaga o indicador juntamente com as linhas
Помощник закрытия позиции, если цена пересекла линию: Правило закрытия: цена Open и цена Close текущего бара должны оказаться по разные стороны от линии. Имя линии задаётся в параметре "Line name" - эту линию пользователь проводит сам. Тип линии может быть...
//+------------------------------------------------------------------+//| Enum Lor or Risk |//+------------------------------------------------------------------+enum ENUM_TRADE_COMMAND
{
close_buys=0, // Close All Buy's
close_sells=1, // Close All Sell's
close_all=2, // Close All Buy's and Sell's
open_buy=3, // Open Buy
open_sell=4, // Open Sell
open_buy_sell=5, // Open Buy and Sell
};
//--- input parametersinputuint maxLimits = 1; // Кол-во Позиции Открыть в одну сторонуinputdouble InpLots = 0.01; // Lotsinputushort InpSignalsFrequency = 10; // Search signals, in seconds (min value "10")inputstring InpNameR = "LineR"; // Line name (Horizontal Line or Trend Line)input ENUM_TRADE_COMMAND InpTradeCommandR = close_all; // Trade command:inputbool ObjRevers = false; // Obj: Reversinputstring InpNameS = "LineS"; // Line name (Horizontal Line or Trend Line)input ENUM_TRADE_COMMAND InpTradeCommandS = close_all; // Trade command:inputulong InpMagic = 78712995; // Magic number//---
//+------------------------------------------------------------------+//| Get value of buffers |//+------------------------------------------------------------------+double iGetArray(constint handle,constint buffer,constint start_pos,constint count,double &arr_buffer[])
{
bool result=true;
if(!ArrayIsDynamic(arr_buffer))
{
Print("This a no dynamic array!");
return(false);
}
ArrayFree(arr_buffer);
//--- reset error codeResetLastError();
//--- fill a part of the iBands array with values from the indicator bufferint copied=CopyBuffer(handle,buffer,start_pos,count,arr_buffer);
if(copied!=count)
{
//--- if the copying fails, tell the error codePrintFormat("Failed to copy data from the indicator, error code %d",GetLastError());
//--- quit with zero result - it means that the indicator is considered as not calculatedreturn(false);
}
return(result);
}
//+------------------------------------------------------------------+//| Search trading signals |//+------------------------------------------------------------------+bool SearchTradingSignals(void)
{
//--- we work only at the time of the birth of new bardatetime time_0=iTime(m_symbol.Name(),Period(),0);
if(time_0==ExtPrevBarsY)
return(true);
ExtPrevBarsY=time_0;
if(!m_symbol.RefreshRates())
{
ExtPrevBarsY=0;
return(false);
}
//---double BuyBuffer[];
double SellBuffer[];
ArraySetAsSeries(BuyBuffer,true);
ArraySetAsSeries(SellBuffer,true);
if(!iGetArray(handle_iCustom,1,0,2,BuyBuffer) || !iGetArray(handle_iCustom,0,0,2,SellBuffer))
{
ExtPrevBarsY=0;
return(false);
}
//---if(BuyBuffer[1]!=0.0)
{
switch(InpTradeCommandY)
{
case close_buys:
ExtNeedCloseBuy=true;
if(LongObjClosed())
break;
case close_sells:
ExtNeedCloseSell=true;
if(ShortObjClosed())
break;
case close_all:
ExtNeedCloseAll=true;
if(LongShortObjClosed())
break;
case open_buy:
ExtNeedOpenBuy=true;
if(LongObjOpened())
break;
case open_sell:
ExtNeedOpenSell=true;
if(ShortObjOpened())
break;
default:
ExtNeedOpenBuySell=true;
if(LongShortObjOpened())
break;
}
}
if(SellBuffer[1]!=0.0)
{
switch(InpTradeCommandU)
{
case close_buys:
ExtNeedCloseBuy=true;
if(LongObjClosed())
break;
case close_sells:
ExtNeedCloseSell=true;
if(ShortObjClosed())
break;
case close_all:
ExtNeedCloseAll=true;
if(LongShortObjClosed())
break;
case open_buy:
ExtNeedOpenBuy=true;
if(LongObjOpened())
break;
case open_sell:
ExtNeedOpenSell=true;
if(ShortObjOpened())
break;
default:
ExtNeedOpenBuySell=true;
if(LongShortObjOpened())
break;
}
}
//---return(true);
}
//+------------------------------------------------------------------+
Agora nas configurações
//--- input parametersinputuint maxLimits = 1; // Кол-во Позиции Открыть в одну сторонуinputdouble InpLots = 0.01; // Lotsinputushort InpSignalsFrequency = 10; // Search signals, in seconds (min value "10")inputstring InpNameR = "LineR"; // Line name (Horizontal Line or Trend Line)input ENUM_TRADE_COMMAND InpTradeCommandR = open_buy; // Trade command:inputstring InpNameS = "LineS"; // Line name (Horizontal Line or Trend Line)input ENUM_TRADE_COMMAND InpTradeCommandS = open_sell; // Trade command:inputstring short_name = "Examples\\ZigzagColor"; // Name Indicatorsinput ENUM_TRADE_COMMAND InpTradeCommandY = open_buy; // Trade command: (BuyBuffer Indicators)input ENUM_TRADE_COMMAND InpTradeCommandU = open_sell; // Trade command: (SellBuffer Indicators)inputbool ObjRevers = false; // Obj: Revers//---
Acrescentou também oTrailing Stop das Linhas Horizontais. Acho que acrescentei tudo, agora só preciso verificar se funciona.
Aqui estão os ajustes
O princípio do trabalho, aqui estes parâmetros.
Quando os fundos atingem um determinado alvo, todas as posições serão fechadas em todos os pares abertos e todos os gráficos mudarão para o padrão "ADX
( É importante - é obrigatório que os valores acima de seu saldo sejam escritos nas configurações) e o Expert Advisor fechará todas as posições abertas e mudará os gráficos do modelo
O indicador tem 4 linhas horizontais - 2 delas trabalhando a partir do indicador Heiken_Ashi
2 níveis dos quais você pode comprar ou vender. Quando eles cruzam o vermelho, você recebe um sinal -quando eles cruzam o azul, você recebe outro sinal
-------------
quando está no meio (entre as linhas (vermelho e azul) os sinais não funcionam - funcionarão, assim como saem para ambos os lados
O indicador tem 4 linhas horizontais - 2 delas trabalhando a partir do indicador Heiken_Ashi
2 níveis dos quais você pode comprar ou vender. Quando eles cruzam o vermelho, você recebe um sinal -quando eles cruzam o azul, você recebe outro sinal
-------------
quando localizados no meio (entre as linhas (vermelho e azul) os sinais não funcionam - funcionarão, como indo em qualquer direção
Anexei o Conselheiro Especialista a este Indicador
Você precisa instalar o Indicador no gráfico e depois instalar o Expert Advisor no mesmo gráfico.
---------------------
depois que uma posição foi aberta, o indicador foi apagado. depois de um tempo, eu defino o indicador novamente (como verificar o trabalho do Perito)
---------------
quando um sinal dispara, abre uma posição e apaga o indicador juntamente com as linhas
Combinados dois especialistas em comércio manual
este aquihttps://www.mql5.com/ru/code/24803
e este aquihttps://www.mql5.com/ru/code/26353
Combinados dois especialistas em comércio manual
este aquihttps://www.mql5.com/ru/code/24803
e este aquihttps://www.mql5.com/ru/code/26353
Acrescentou outra linha
Acrescentei outra linha.
Para um especialista de pleno direito, desaparecido -
1 - Stop Loss , Take Profit in pips (não visível)
2 - Trailing Stop a partir da linha horizontal
3 - Sinal do Indicador
Vou modificar ainda mais o Expert Advisor2_LineOpenClose.mq5
Para um especialista de pleno direito, desaparecido -
1 - Stop Loss , Take Profit in pips (não visível)
2 - Trailing Stop a partir de Linhas Horizontais
3 - O sinal do indicador
Vou modificar ainda mais o Expert Advisor2_LineOpenClose.mq5
Adicionado - Sinal do Indicador
desta maneira
Agora nas configurações
Verificação de um sinal indicador
Para um especialista de pleno direito, desaparecido -
1 - Stop Loss , Take Profit in pips (não visível)
2 - Trailing Stop a partir de Linhas Horizontais
3 - O sinal do indicador
Vou afinar o Expert Advisor2_LineOpenClose.mq5
Eu também acrescenteiTrailing Stop da Linha Horizontal . Eu meio que acrescentei tudo e agora verifico sua praticidade.
Aqui estão os ajustes
Acrescentou também oTrailing Stop das Linhas Horizontais. Acho que acrescentei tudo, agora só preciso verificar se funciona.
Aqui estão os ajustes
O princípio do trabalho, aqui estes parâmetros.
Quando os fundos atingem um determinado alvo, todas as posições serão fechadas em todos os pares abertos e todos os gráficos mudarão para o padrão "ADX
( É importante - é obrigatório que os valores acima de seu saldo sejam escritos nas configurações) e o Expert Advisor fechará todas as posições abertas e mudará os gráficos do modelo
-------------------------------------------------------------
parâmetro com lote.
você pode definir uma posição como 0,06 ou número de posições como 6 a 0,01
---------------------------------------------------------------
parâmetro com Take ProfitT.
Ela é acionada pelo número de pips (se for "0" fechará a posição) é necessário especificar a distância.
XXX_Linha de trilhos.mq5
Adicionado - Sinal do Indicador
assim.
Nos ambientes agora é assim
Verificação do sinal a partir do indicador
O indicador só abre posições para fechar, tirei-o do Expert Advisor no terminal (Moving Average)
Eu multei um pouco de reversão
O sistema comercial mais simples usando semáforos indicadores
Amostras de semáforos típicos, indicadores de sinal
Há muitos indicadores similares na Base de Código no momento. Para o propósito deste artigo, vou dar apenas alguns links para os recursos da fonte:
Do indicador, só abre posições, para fechar, tomei o caminho do Expert Advisor no terminal (Moving Average)
Eu multei um pouco ao contrário
Eu não gosto quando fecho uma posição. Estou procurando uma maneira de corrigir a função, de fechar uma posição a partir de um indicador
-------------------------------------------------------------------
Eu o consertei. Eu o adicionei do indicador de Média Móvel
e em OnTick()
Acontece que oSelectPosition() deve passar por ele