Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 6. - página 938

 

Olá, eu não consigo entender uma coisa.

Preciso calcular o montante de possíveis perdas em uma ordem na moeda do depósito. A tarefa parece trivial. Eu fiz uma construção como esta:

OrderSelect(vID, SELECT_BY_TICKET);   
vDepoLoss = (OrderStopLoss() - OrderOpenPrice()) / MarketInfo(OrderSymbol(), MODE_TICKSIZE) * MarketInfo(OrderSymbol(), MODE_TICKVALUE) * OrderLots();

Na maioria dos casos, ele calcula corretamente. Mas eu encontrei um símbolo pelo qual o cálculo está errado - HSI. Teimosamente não conta em moeda de depósito, mas em outra coisa (provavelmente em yuan)

 
kokos4:
Ajudar um programador novato a escrever um roteiro para apagar ordens pendentes. Necessidade de excluir todas as ordens de compra pendentes quando não há posições de mercado e nenhuma ordem de venda pendente.

Há um roteiro para apagar todas as ordens. ele fecha alternadamente todas as apostas pendentes e de trabalho

 

Boa tarde, favor aconselhar como organizar um ciclo SOMENTE para o dia atual. Ou seja, preciso de valores indicadores SOMENTE para o dia atual. Calcular a variável A para o dia atual!!!!

Quero acrescentar todos os valores do indicador para o dia atual!

Sugerir um loop que possa funcionar nesta modalidade.....

 
nikelodeon:

Boa tarde, favor aconselhar como organizar um ciclo SOMENTE para o dia atual. Ou seja, preciso de valores indicadores SOMENTE para o dia atual. Calcular a variável A para o dia atual!!!!

Todos os valores indicadores para o dia atual precisam ser somados!

Sugerir um loop que possa funcionar nesta modalidade.....

O início do dia atual é:

    datetime ldt_BeginDay = iTime (_Symbol, PERIOD_D1, 0);

O número de barras a serem calculadas sobre o TF desejado:

    int li_Bar = iBarShift (_Symbol, _Period, ldt_BeginDay);

Além disso, você mesmo pode fazer isso!

 
Obrigado. Feito por....
 
Não sei como descobrir a data do bar atual... Preciso descobrir quando o bar anterior foi ontem, mas o atual é HOJE!!!! Eu tentei comparar os tempos, mas não funcionou. Talvez existam soluções conhecidas????
 
Todos classificados.... Realmente uma pergunta de principiante :-)
 

Bom dia a todos...

No tipo " if(Volume[0]>1) voltar; " queria o seguinte:

 if(iVolume(NULL,PERIOD_D1,0)<1) 
 {
 start1();
 return;
 }
Geralmente,trabalhar no gráfico h4, e se a vela nova estiver no gráfico diário, então executar start1(). Mas não funciona assim...
 
Escapee:

Bom dia a todos...

no tipo " if(Volume[0]>1) return;" queria o seguinte:

Foi você quem quis verificar a abertura da vela diária.

1.if(Volume[0]>1) é sempre verdadeiro (exceto fim de semana)

2.se(iVolume(NULL,PERÍODO_D1,0)<1) for sempre falso, pelo menos um tick é (exceto no fim de semana)

Para verificar a abertura de um novo bar, é melhor usar o tempo. As carteiras também podem vir em pacotes.

 
Vinin:

Foi você quem quis verificar a abertura da vela diária.

1.if(Volume[0]>1) é sempre verdadeiro (exceto nos fins de semana)

2.se(iVolume(NULL,PERÍODO_D1,0)<1) for sempre falso, pelo menos um tick está lá (exceto no fim de semana)

Para verificar a abertura de um novo bar, é melhor usar o tempo. As carteiras também podem vir em lotes

1. Por resultados no testador vejo que, por exemplo, se tomarmos os diários, então às 00.00 ele realiza as ações especificadas, ou seja, o volume[0] funciona. ^_-