[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 33

 
Andrew1001:

Boa noite. Por favor, me informe onde e o que fiz de errado!

Primeiro - favor inserir o código através do botão apropriado em seu correio.

Em segundo lugar, não há função If na MQL4.

int start()


{
int cnt, ticket, total, profit;
total = OrdersTotal();
if(total < 1)
{
ticket=OrderSend(Symbol(),OP_BUY,LotTrend,Ask,0,Ask-SL*Point,Ask+TP*Point,0,511,0,Green);
}
profit = OrderProfit();
If (OrderProfit < 0) /*если сработал стоплосс*/
{
ticket=OrderSend(Symbol(),OP_SELL,LotTrend,Bid,0,Bid+SL*Point,Bid-TP*Point,0,511,0,Red);
} /*открываем позицию в противоположном направлении*/
return;
}

Мне выдает такие ошибки:
'If' - function is not defined
'<' - left parenthesis expected
'{' - semicolon expected
ПОДСКАЖИТЕ ПОЖАЛУЙСТА что я сделал не так! 
 
Arles:

Boa tarde a todos!

Há cerca de uma semana, comecei a aprender programação e obtive um resultado interessante. Não sei se posso confiar nele. Acabo de pensar em um indicador há muito tempo e acabo de consegui-lo implementar em código.


Parece bom no geral. Há uma questão sobre a diferença entre o comércio lucrativo máximo e o comércio lucrativo médio.

Tente executá-lo em um cronograma diferente: 2003, 2004, ano.

Tive casos em que a tendência é positiva num ano e negativa no ano seguinte. Não se pode fazer isso um ano de cada vez.

 
Andrew1001:

Boa noite. Por favor me diga onde e o que eu fiz de errado!

int start()


{
int cnt, ticket, total, lucro;
total = OrderTotal();
if(total < 1)
{
ticket=OrderSend(Symbol(),OP_BUY,LotTrend,Ask,0,Ask-SL*Point,Ask+TP*Point,0,511,0,Green);
}
lucro = OrderProfit();
If (OrderProfit < 0) /* se o stop loss for acionado*/
{
ticket=OrderSend(Symbol(),OP_SELL,LotTrend,Bid,0,Bid+SL*Point,Bid-TP*Point,0,511,0,Red);
} /* abrir posição na direção oposta*/
voltar;
}

Eu recebo estes erros:
'Se' - função não está definida
'<' - parêntese esquerda esperada
'{' - ponto-e-vírgula esperada
POR FAVOR, diga-me o que fiz de errado!


1. (trivialidades) "Se" é soletrado com um pequeno "se".

2. (o principal) para usar a função OrderProfit(), a própria ordem cujo lucro é lido deve ser selecionada usando a função OrderSelect()

Para descobrir qual foi o resultado do último fechamento da ordem, precisamos encontrar a última ordem fechada.

 
abolk:


1. (trivialidades) "Se" é escrito com um pequeno "se".

2. (mais importante) para usar a funçãoOrderProfit(), a ordem em si, cujo lucro deve ser lido, deve ser selecionada usando a função OrderSelect()

Para descobrir qual foi o resultado do último fechamento da ordem, precisamos encontrar a última ordem fechada.

Obrigado! Você pode me dizer como fazer isso!))
 
Arles:

Boa tarde a todos!

Há cerca de uma semana, comecei a aprender programação e obtive um resultado interessante. Não sei se posso confiar nele. Eu acabei de inventar o indicador há muito tempo e só agora consegui implementá-lo no código.


Aqui o testador conta mesmo com um erro, ou melhor, com um erro, ou o que, se você, referindo-se aos resultados, a transação em -22 negativos será o mínimo, então você, se eu entendi tudo corretamente, não pode ser um drawdown absoluto 4.00, você já tem uma transação 20,00 dá, sim, mais longe, a propósito, você tem um drawdown 29049(63%) mas, novamente, como você poderia conseguir isso, se você tem apenas duas transações em cerca de -20)) mais curto apenas algo não contado como o próprio testador.
 

Escrevi uma função para mover todas as paradas para o mesmo nível, mas no final cada uma das ordens abertas fecha em sua própria parada de perda, que foi especificada na abertura, ou seja, acho que as paradas não são movidas para nenhum lugar, qual poderia ser o problema?

vazio OrModSL(período de string)//função para mover a parada para o fractal inferior do gráfico de 15 minutos

{
if(period=="M15")// se período H1
{
for(int i=OrdersTotal()-1;i>=0;i--)
{
RefreshRates();
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES) && OrderType()==OP_BUY)// se o último pedido de compra tipo
{
OrderModify(OrderTicket(),OrderOpenPrice(),dnfrM15,OrderTakeProfit(),0,Blue);
}

if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES) && OrderType()==OP_SELLL)
{
OrderModify(OrderTicket(),OrderOpenPrice(),upfrM15,OrderTakeProfit(),0,Blue);// se o último pedido vender
}
}

retorno(0);


 

Olá!

Mais uma vez, gostaria de solicitar um exemplo ou link para mostrar como anexar informações a um arquivo sem deletar o anterior, o ponteiro do arquivo é de particular interesse (nunca o usei antes).

Obrigado.

 

Não sei onde você pode aprender a escrever códigos, existe um website que diz clara e precisamente o que e como escrever em código para que o consultor possa fazer pedidos, colocar paradas e lucros, etc. Não tenho dinheiro para pedir um consultor, mas as idéias me parecem muito boas.

 
sting-igor:

Não sei onde você pode aprender a escrever códigos, existe um website que diz clara e precisamente o que e como escrever em código para que o consultor possa fazer pedidos, colocar paradas e lucros, etc. Não tenho dinheiro para pedir um consultor, mas as idéias me parecem muito boas.



Não tenho dinheiro para pedir um EA, mas acho que as idéias são muito boas.