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

 
Ekburg:

Aí é que está: tudo é normal! Eu coloquei impressoras para este fim, para que durante o teste eu pudesse rastrear quais valores são enviados para a função de modificação, tudo é normal lá, a parada é diferente, nada a mais é lançado, tudo está dentro dos limites permitidos pelo servidor, e os oponentes no código acima não permitem o envio dos mesmos valores.

Eu não sei. Para mim depois de ter colocado a verificação diretamente antes da OrderModify() depois da OrderSelect(), o erro 1 deixou de dar, e antes também tem piscado constantemente.
 
rigonich:

O aviso significa - o índice da matriz deve ser do tipo int. Você precisa usar as funções iClose() e iOpen(). Determine o número da barra cujo tempo de abertura é de 1 h e selecione no laço a partir das 10 barras seguintes as que você deseja.
Obrigado pela resposta. Teoricamente entendo o que você quer dizer, mas para ser honesto, não consigo descobrir como fazê-lo na prática, talvez você tenha algum exemplo.
 
Desead:

Necessidade de normalizar a tabela de preços, qualquer par de moedas de sua escolha. Preciso dele para um indicador. Tentei dividir o valor atual pelo anterior - recebo algum tipo de oscilador em torno de 1. Tive a idéia de que eu deveria converter o gráfico de valores absolutos para valores relativos, ou seja, neste caso eu poderei ver a mudança percentual de cotação. Ela foi implementada. Já é melhor e praticamente o que precisamos. Entretanto, meu desejo final é normalizar as citações na faixa [0:1] . Apropósito, aqui está o que eu preciso, mas em burguês - eu gostaria do mesmo em russo: http://people.revoledu.com/kardi/tutorial/Similarity/Normalization.html

Eu já me cansei de lutar com isto. Não posso apagar todas as ordens pendentes normalmente, só não consigo apanhar o jeito:

Eu até adicionei ao laço PARA QUANDO as ordens eliminadas ainda estão lá, mas eu ainda não as eliminei. Tenho muitas ordens pendentes para apagar, ou seja, cerca de 20, será que é algo complicado?


para sua primeira pergunta - olhe para o estocástico
 
Desead:

Necessidade de normalizar a tabela de preços, qualquer par de moedas de sua escolha. Preciso dele para um indicador. Tentei dividir o valor atual pelo anterior - recebo algum tipo de oscilador em torno de 1. Tive a idéia de que eu deveria converter o gráfico de valores absolutos para valores relativos, ou seja, neste caso eu poderei ver a mudança percentual de cotação. Ela foi implementada. Já é melhor e praticamente o que precisamos. Entretanto, meu desejo final é normalizar as citações na faixa [0:1] . Apropósito, aqui está o que eu preciso, mas em burguês - eu gostaria do mesmo em russo: http://people.revoledu.com/kardi/tutorial/Similarity/Normalization.html

Eu já me cansei de lutar com isto. Não posso apagar todas as ordens pendentes normalmente, só não consigo apanhar o jeito:

Eu até adicionei ao laço PARA QUANDO as ordens apagadas ainda estão lá, mas ainda não as apaguei. Tenho muitas ordens pendentes para apagar, ou seja, cerca de 20, será que é algo complicado?


Já tentei colocar e apagar todas as ordens pendentes da mesma forma que já fiz, mas não quero fazer de outra forma. Se alguém souber, você pode me dizer por quê?
 
Sergstuddek:
As pessoas gentilmente aconselham como trabalhar com arrays, preciso selecionar os valores máximo e mínimo do fechamento e abertura do bar, no intervalo de tempo de 1.00 a 10.00, eu tentei fazer isso, mas algo está errado. Ele fornece "[' - o índice da matriz deve ser um inteiro C:\Program Files\InstaTrader\Profiler19 EUR-JPY.mq4 (61, 21)
O que está errado, como consertá-lo

Eu o redesenhei da seguinte forma

int MAX()
{
if (Hour()==10)
        {
      
        for(i=0; i<=9; i++)
        double MAX1 = High [iHighest(Symbol(), PERIOD_H1,MODE_CLOSE,i,0)];
        }
        return(MAX1);
        
}

Eu não recebo erros, mas o preço não funciona, ou melhor, não funciona corretamente, qual é o problema?

 
Sergstuddek:

Eu o redesenhei da seguinte forma

Não mais dá erros, mas não detecta o preço, ou melhor, não detecta, mas não corretamente, qual é o problema?

Ele buscará o índice de barras com o preço máximo nas últimas 9 barras, desde que você execute o programa às 10 horas. Hora() é a hora de início do programa (hora do servidor).

P.S. Mais precisamente, não o índice, mas o preço máximo (Alto) dessa barra.

Arquivos anexados:
 

Por favor, ajude, assim que eu colocar a outra sl e tp não funcionar comprando, abra o lote somente com a venda.

#define MAGIC 1234
#define IDENT "mo_bidir"

extern int lots = 1;
extern int stop_loss = 76; //
extern int take_profit = 750; //
extern int steps = 5;// Шаг отложенных ордеров

int start(){

if (OrdersTotal() == 0){
OrderSend(Symbol(), OP_BUY, lots ,Ask, 3, Ask - stop_loss * Point, Bid + take_profit * Point, IDENT, MAGIC, 0, Blue);
OrderSend(Symbol(), OP_SELL, lots ,Bid, 3, Bid + take_profit * Point, Ask - take_profit * Point, IDENT, MAGIC, 0, Red);
OrderSend(Symbol(), OP_BUYSTOP, 0.05*lots,Ask+steps*Point, 3, Ask + stop_loss * Point, Bid + take_profit * Point, IDENT, MAGIC, 0, Blue);
OrderSend(Symbol(), OP_SELLSTOP, 0.05*lots,Bid-steps*Point, 3, Bid - take_profit * Point, Ask - take_profit * Point, IDENT, MAGIC, 0, Red);
}
return(0);
} 
 
samaelfess:

Por favor, ajude, assim que eu colocar a outra sl e tp não funcionar comprando, abra o lote somente com a venda.



Você tem Bid + stop_loss em vez de Bid + take_profit. E em pendente para OP_BUYSTOP Ask + stop_loss, em vez deAsk - stop_loss e para OP_SELLSTOP -- Bid - take_profit em vez de Bid + take_profit.

E todos os preços não estão normalizados.

P.S. Eu me pergunto se não funciona com outra sl e tp?

 
Obrigado, vou prestar mais atenção.
 
rigonich:

Eu não sei. Parei de receber o erro 1 após OrderModify() ter sido verificado imediatamente antes OrderSelect(), mas antes que ele aparecesse o tempo todo também.

E que tipo de cheque você colocou?!
Razão: