[ARQUIVO!] Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 4. - página 599

 
TarasBY:

Vocês estão todos em conluio?! "Ainda sem T/P" - cuidado para decifrar! Faça-o:

E mostrar o que está no tronco.

E não esqueça que existem REGRAS que determinam a distância de TP e SL do preço atual - estas regras devem ser OBEYED!



2012.12.08 20:23:18 2012.12.07 00:00 sasha EURUSD.m,M15: máx = 1.3079 | min = 1.295

 
dbs039:

Boa tarde a todos, estou interessado em tal pergunta, como posso trabalhar com carrapatos, a partir de algum evento, por exemplo, comparar o valor do primeiro carrapato após algum evento e o n-ésimo, como entendo durante a função iniciar o preço, por exemplo, Bid todo o tempo é sobrescrito, mais eu posso operar com o valor anterior, mas como operar com o pré-primeiro e assim por diante, onde e como tudo isso está escrito? Obrigado por sua atenção)

Para uma matriz:

double gda_Array[1000000][3];
int    gi_cnt = 0;
void start()
{
    gda_Array[gi_cnt][0] = GetTickCount();
    gda_Array[gi_cnt][1] = TimeCurrent();
    gda_Array[gi_cnt][2] = Bid;
    gi_cnt++;
    if (gi_cnt > ArrayRange (gda_Array, 0)) ArrayResize (gda_Array, gi_cnt);
}

E brincar com os carrapatos. Você pode escrevê-los em um arquivo.

 
sasha1995:

2012.12.08 20:23:18 2012.12.07 00:00 sasha EURUSD.m,M15: máx = 1.3079 | min = 1.295

Isto sugere que o alto e o baixo foram calculados.
 
dbs039:

Boa tarde a todos, estou interessado em tal pergunta, como posso trabalhar com carrapatos, a partir de algum evento, por exemplo, comparar o valor do primeiro carrapato após algum evento e o n-ésimo, como entendo durante a função iniciar o preço, por exemplo, Bid todo o tempo é sobrescrito, mais eu posso operar com o valor anterior, mas como operar com o pré-existente e assim por diante, onde e como tudo isso está escrito? Obrigado por sua atenção)


Não há opção na entrega padrão do MT4 para trabalhar com o histórico do tick. Se você o quer, leiahttp://www.opentraders.ru/downloads/17/http://avtoforex.ru/testirovanie/5-kachestvo-modelirovanija-99-procentov-v-testere-strategij.html
 
if(OrderTakeProfit()!=0&&OrderTakeProfit()!=OrderOpenPrice()+2*kio*Point&&Bid>OrderOpenPrice()+50*kio*Point)
               OrderModify(OrderTicket(),OrderOpenPrice(),OrderStopLoss(),OrderOpenPrice()+2*kio*Point,0);
Olá a todos. Vocês podem me dizer o que há de errado com o Erro nº 1 como corrigi-lo? obrigado!
 
laveosa:
o que há de errado com o Erro 1? Obrigado!


Você está tentando colocar um takeprofit em uma ordem de dois passos quando o preço é 50 passos maior do que o mesmo nível na mesma direção. Neste caso, não será mais um take profit, mas um stop loss. Takeprofit para uma ordem de compra é tudo o que é mais alto do que o preço atual Ask, não o preço pelo qual a ordem foi colocada. Para uma ordem de venda, é o contrário.

E normalizar os preços.

 
r772ra:

Acho que é tudo sobre a função GetPriceToInput().

Certo. Basicamente, o preço limite é calculado lá. E como se viu, precisávamos de uma condição que oGetPriceToInput() fosse inferior ao Ask for bays e superior ao Bid for sels, respectivamente. Esta verificação estava faltando, por isso o erro 130 às vezes aparecia.
 
r772ra:

Tente obter valores indicadores da barra 1 e barra 2. Algo parecido com isto.

Eu preciso apenas de 1 e 0, mas esse não é o problema aqui: as ordens (circuladas em vermelho), por que elas abrem??? não há critérios de acionamento para elas no gráfico ((.
 
Equilibrium:

Eu preciso exatamente de 1 e 0, mas esse não é o problema aqui: as ordens (circuladas em vermelho), por que elas abrem??? para elas não há critérios de acionamento no gráfico ((.

Para ser mais preciso, você precisa olhar para o código da EA. Isto geralmente acontece quando não levamos em conta certas características dos assessores com os chamados indicadores. Os consultores especializados não calculam sozinhos os valores indicadores, eles os tiram dos amortecedores indicadores prontos. É por isso que se você precisa, por exemplo, lembrar os valores anteriores do indicador ou algo mais, que o próprio indicador faz, você tem que incluir tudo isso em seu Consultor Especializado. E também há indicadores "tortos", embora eu ache que você tem um estocástico padrão e isso não tem nada a ver com isso.
 
rigonich:

Para responder mais precisamente a esta pergunta, você precisa ver o código do Expert Advisor. Entretanto, isto geralmente acontece quando se escreve um Consultor Especialista não leva em conta certas características do trabalho dos Consultores Especialistas com os indicadores a serem chamados. Os consultores especializados não calculam eles mesmos os valores indicadores, eles os tiram dos amortecedores indicadores já prontos. É por isso que se você precisa, por exemplo, lembrar os valores anteriores do indicador ou algo mais, que o próprio indicador faz, você tem que incluir tudo isso em seu Consultor Especializado. E às vezes há indicadores "tortos", mas acho que você tem um estocástico padrão e isso não tem nada a ver com isso.


Todos os indicadores, inclusive os padrão, são redesenhados em barra 0.

Uma palavra de conselho... Se você tem uma pergunta como esta, há uma função como esta:

bool WindowScreenShot( nome de arquivo string, int size_x, int size_y, int start_bar=-1, int chart_scale=-1, int chart_mode=-1)
Salva a imagem da tabela atual em um arquivo GIF. Em caso de falha, ele retorna FALSO. Para obter informações sobre o erro, é necessário chamar a função GetLastError().

A captura de tela é salva nos arquivos do terminal(arquivos de teste do terminal em caso de teste do Expert Advisor) ou em suas subpastas.

Razão: