[AVISO FECHADO!] Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por aqui. Não posso ir a lugar algum sem você. - página 69
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Estou aqui sentado e não consigo entender como implementar o algoritmo.
Talvez alguém possa ajudar.
1. encontrar o início do dia (eu fiz isso)
2. Encontre o máximo do dia (eu fiz isso)
3. Eu preciso descobrir as barras que seguiriam o primeiro fractal após a passagem do MA de cima para baixo após esse máximo.
Estou anexando a figura.
Ao invés de iRSI, deveria ser iCCI.
YEPRST...... está completamente fora de vista..... obrigado, vamos consertá-lo
Estou aqui sentado e não consigo entender como implementar o algoritmo.
Talvez alguém possa ajudar.
3. você precisa calcular as barras que seguirão o primeiro fractal após cruzar o MA de cima para baixo após este máximo."calcular as barras que se seguirão..."
Escreva simplesmente: "Quero saber para onde vai o preço depois de ligar o computador..." :-)))))
"calcular as barras que se seguirão..."
Escreva simplesmente: "Quero saber para onde vai o preço depois de ligar o computador..." :-)))))
você não entende.
estas barras já estão na tabela. ou digamos que é a barra atual. E se se encaixa nas condições - é a barra que você está procurando.
Isso é o primeiro de tudo.
E, em segundo lugar, por que se preocupar com as besteiras se você não entende do que estamos falando?
Você poderia tentar isto
OrderSelect(1, SELECT_BY_POS)
if(OrderOpenTime()!=0)
{
///необходимая операция
}
Mas esta é apenas uma opção se você tiver apenas 1 pedido!
Então nós apenas verificamos se o pedido está pendente?
A idéia é a seguinte: junto com a parada de um pedido, por exemplo, na compra, três pedidos pendentes são definidos
Quero uma condição para que uma destas 3 ordens pendentes se torne uma "ordem de trabalho" normal.
você não entende.
Estas barras já estão na tabela. ou digamos que esta é a barra atual. E, se ele satisfaz as condições, é o bar que você está procurando.
Isso é o primeiro de tudo.
E, em segundo lugar, por que você está perdendo seu tempo se não entende do que estamos falando?
"Calcule as barras que seguirão o primeiro fractal após o re... "Significa que eles o seguirão, não que "já existem na tabela".
Mas se "E se ele satisfaz as condições - é o bar que você está procurando" - isso é outra questão. Descreva as "Condições", alguém vai ajudar.
Peço desculpas pela inundação, ela simplesmente escorregou para fora.
"calcule as barras que seguirão o primeiro fractal após o re... " Se seguirem, significa que seguirão, não se já estiverem "na tabela"...
Mas se "E se ele satisfaz as condições - é o bar que você está procurando" - isso é outra questão. Descreva "Condições", alguém vai ajudar.
Desculpe pela enchente, ela simplesmente escorregou.
Oooh eu o escrevi exatamente assim.
Não vou tentar descobrir o que não sei, não sei onde ou como.
Estou interessado em bares específicos que já existem. E para ser mais exato - seu turno.
A propósito, já a implementei, afinal não é tão difícil :)
então nós apenas verificamos se o pedido está pendente?
A idéia é a seguinte: quando você pára um pedido, por exemplo, na compra, três pedidos pendentes são definidos
quero uma condição para que uma destas 3 ordens pendentes se torne uma "ordem de trabalho" normal
Então você tem 3 ordens pendentes e se pelo menos 1 tiver acionado, então alguma condição está definida?
se sim, então é assim
for(int cnt=0;cnt<OrdersTotal();cnt++) // последовательно проверяем все ордера
{
OrderSelect(cnt, SELECT_BY_POS)
if(OrderOpenTime()!=0) ///время не равно 0 значит отложка сработала(или как писал Roger if(OrderType()<2) )
{
///необходимая операция
}
}
ou você tem 1 ordem em aberto + 3 ordens pendentes?
então você pode tentar dessa forma
//в глобальных переменных
int tick[3];
//в функции start
//cначало записываем номера тикетов отложек в переменные
for(int cnt=0;cnt<OrdersTotal();cnt++) // последовательно проверяем все ордера
{
OrderSelect(cnt, SELECT_BY_POS)
if(OrderOpenTime()!=0)
{
tick[cnt]=OrderTicket();
}
}
//а далее проверяем выполнился ли отложенный ордер
for(int cnt=0;cnt<OrdersTotal();cnt++)
{
OrderSelect(cnt, SELECT_BY_POS)
if(OrderOpenTime()!=0)
{
for(int cnt2=0;cnt2<3;cnt++)
if(tick[cnt]==OrderTicket())
{
//необходимое условие
}
}
в глоб перем
int mag=12345;
в ф start
/// При открытии отложки укажите ему в качестве магика mag
///ну а далее идет поиск "бывшей" отложки по Magic
for(int cnt=0;cnt<OrdersTotal();cnt++)
{
OrderSelect(cnt, SELECT_BY_POS)
if(OrderOpenTime()!=0&&OrderMagic()==Mag)
{
///необходимая операция
}
}
eu não verifiquei o código para possíveis erros!
Qual ordem a função OrderSelect(0,SELECT_BY_POS) retorna? Qual foi o primeiro a ser aberto? Os pedidos não podem ser trocados? (não uso ordens pendentes)
Certo, qual delas é a mais antiga. Isto é conveniente se você sabe com certeza que, em princípio, só pode ter um pedido aberto e pode evitar o excesso de pedidos. As ordens não são trocadas, mas transferidas para a menor quando a anterior é fechada.