A TROCA DE IDÉIAS - página 15

 
leonid553 писал (а) >>

Não se trata realmente de estratégia. Não é difícil inserir um indicador.

Mas como fazer com que o código de especialistas funcione programticamente em OPENING PRICES?

Para obter o mesmo resultado na execução de TODAS as TICKETS, como na execução de PREÇOS ABERTOS?

Ainda não fui capaz de fazer isso.....

Estar amarrado ao tempo ou ao volume é uma porcaria.... Você pode perder carrapatos

Eu o faço desta maneira.

em variáveis

int last_bar =0;

int start()

{

se (!IsNewBar()) retornar(0);

chegamos aqui apenas uma vez no primeiro tick de uma nova barra. mesmo que tenhamos perdido o primeiro tick desta barra

}

bool IsNewBar()

{

se (último_bar == Barras) retornar(falso);
last_bar = Bars;
retorno(true);

}

 
kharko писал (а) >>

Pegue o código... Abre e modifica a preços de abertura...

kharko e esmaster, obrigado!

Mas eu já escrevi acima na página anterior que métodos tão simples não ajudam. Eu mesmo experimentei usando os dois métodos - inseri uma condição de preço de abertura no início vazio().

Mas aparentemente isto não é suficiente! Como antes, eu obtenho resultados diferentes, nitidamente opostos quando estou correndo por PREÇOS ABERTOS e por TODOS os TICKERS.

Provavelmente, precisamos verificar o trabalho "desta maneira e daquela maneira" no gráfico visual do testador, depois "sentir a diferença" e de alguma forma mudar o trabalho de outras funções (além de iniciar() )

//-----------------------------------------------------------
void start()
   {
   if (!IsTradeAllowed()) return;
   level_buy_stop=0;
   level_sell_stop=0;
   StepingStop();
   StepingPendings();
   if (TotalBuy ()==0 && TotalBuyStop ()==0) SetBuyStop ();
   if (TotalSell()==0 && TotalSellStop()==0) SetSellStop();
   Comment("Level Buy Stop=",level_buy_stop*Point,
    "\n","Level Sell Stop=",level_sell_stop*Point);
   }
//-----------------------------------------------------
void StepingStop()      {... .  }
//-----------------------------------------------------
void StepingPendings()  {... .  }
//-----------------------------------------------------
void SetBuyStop()    {... ...}

void SetSellStop()   {... ...}

int TotalBuy()       {  ...  }

int TotalBuyStop()   {...    }

int TotalSell()      {...... }

int TotalSellStop()  {.... ..}

// End
 
leonid553 diferente porque a fixação é a preços de abertura. precisamos remover as paradas e os lucros ao mesmo tempo. e trava a preços de abertura...
 
leonid553 писал (а) >>

Olá a todos. Proponho a utilização do chamado "Trend Detector de tendências". Eu não esperava um resultado tão bom deste meu achado. Acidentalmente o cegou - coloque-o dentro. Eu inseri esta parte em quase todos os Expert Advisor e até mesmo um Expert Advisor perdedor produz algum lucro! Diminui o número de negócios contra a tendência (a maioria dos quais perdendo) e aumenta consideravelmente o parâmetro de Rentabilidade do Expert Advisor, muitas vezes para pelo menos dois! Isto significa que fora do período de otimização temos muito mais chances de ter lucro!

Eis a idéia: pegamos os indicadores BearsPower e BullsPower (bulls power e bear power) e os comparamos uns com os outros. Mas basta compará-las - é um negócio doloroso. Fazê-lo de forma programática é incômodo. É por isso que eu coloco MA neles e comparo os valores de MA em barra zero! Basta somar estes valores = Delta. Além disso, tudo é simples. Se DELTA ..>0 - a tendência é para cima. Caso contrário, está indo para baixo!

Só precisamos acrescentar à condição para comprar se ((Delta>=0) && ... ...

E na condição de Venda - se ((Delta<=0) && ... ...

Em parâmetros externos de qualquer Expert Advisor, inserir :

Não é necessário inseri-lo. Mas então você tem que pegar estes parâmetros e inserir valores numéricos em vez de nomes de variáveis diretamente no código. E aqui está o bloco em si:

Aqui está um exemplo de como um EA trabalha com o Trend Detector. Podemos ver que, em caso de uma tendência de alta, vamos comprar, e vice-versa.

Talvez alguém tenha sugestões para melhorar e aprimorar o projeto. Gostaria de saber o quão promissor este detector de tendências será.

Eu fiz o indicador de acordo com a descrição exata e fiquei surpreso :) Eu recebi um MACCD retardado :)

Arquivos anexados:
 
Vinin писал (а) >>

вот и индикатор. _LineStat_1.mq4

На экран выводится количество баров.Выводится 3 сигмы. И если цена находится внутри одно СКО, то перерасчета не прноизводится, так как все в допустимых пределах. При пробитии, будет перерасчет.

Há três valores numéricos no canto superior esquerdo do gráfico após N=150 (número de barras). Por favor, diga-me o que significam e como usá-los

 
Figar0 писал (а) >>

Minha idéia, eu vou começar...

A idéia é antiga, mas por alguma razão não está muito difundida na implementação, eu mesmo a utilizo, ela funciona muito bem com algumas estratégias. Sair somente por Take Profit. Se você adivinhou diretamente da direção - obter inicialmente planejado obter lucro, se não - apertar TP seguindo o preço (você pode usar diferentes algoritmos - laços, elásticos, indicadores de nível, etc.) Fechar TP após o preço. Neste caso, o take pode ser negativo, mas muitas vezes é muito mais lucrativo do que o desencadeamento de um stop loss. Não é proibido um prejuízo de segurança para limitar enormes perdas.

1) Eu também uso isto em daytrading, e o chamo de "Trailing Profit". Entretanto, não utilizo o trailing stop para o comércio ativo, pois é uma forma de minimizar o lucro.

2) Eu também tenho uma pequena idéia. Às vezes é desagradável ver o lucro diminuir e mover a posição aberta para a perda, depois que perdemos 1-2 pontos para TP. É por isso que comecei a praticar a seguinte solução: quando restam 1-2 pips antes da TP, envio um pedido para fechar o pedido. Neste caso, o pedido ou é fechado no TP, ou não é fechado de todo (já que o preço recuperou e saiu da área de escorregamento), mas os pedidos são fechados com mais freqüência e isso traz mais lucro por um período.

 
rid писал (а) >>

Há três valores numéricos no canto esquerdo do gráfico após N=150 (número de barras). Por favor, diga-me o que significam e como usá-los

Delta é igual à diferença entre a linha média esquerda e direita.

3*S são três desvios padrão

n é quantas barras o canal de regressão não foi recalculado.

Se o preço na última barra estiver dentro de 3 desvios padrão (+-1,5), nenhum recálculo é realizado.

Tive que entrar no código (o indicador é muito antigo, ele foi desenvolvido em 2006).

Se você quiser alterar as informações produzidas, você é bem-vindo

 
OK! Obrigado.
 
Vinin писал (а) >>

Eu tive que entrar no código (o indicador é muito antigo, foi feito em 2006)

Se você quiser alterar as informações exibidas, você é bem-vindo a fazê-lo.

Há um pedido modesto. Se você não se importa. Como ESCREVER uma expressão iCustom para este indicador?

Pelo menos para TODAS as linhas amarelas e para a linha central ?

Eu não consigo descobrir sozinho!

 
rid писал (а) >>

Há um humilde pedido. Se não for difícil. Como GRAVAR a expressão iCustom para este indicador?

Pelo menos para TODAS as linhas amarelas e para a linha central ?

Eu mesmo não consigo entender!

Se você precisar, posso procurar nas pilhas o indicador correto ou fazer um. E como trabalhar com ele no Expert Advisor - apenas todos os cálculos nele (Expert Advisor).