[Arquivo!] Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por ela. Não poderia ir a lugar algum sem você - 2. - página 276
Se estamos falando de carrapatos, você pode escrever um código que salve o arquivo de dados, mas precisará carregar a partir de um arquivo no ekspert. Faria sentido simplesmente manter o computador funcionando?
Acho que eu deveria usar a segunda opção. Obrigado, BBSL.
Eu entendo, você tem que obter o número do tickit assim:
Sabe, com apenas um pedido, pode funcionar, mas se você ainda o abrir manualmente, não será o mesmo. O número do bilhete deve ser gravado em uma variável, e após a seleção do pedido devemos comparar seu bilhete com o bilhete armazenado:
if (OrderTicket()==number_ticket) {
// ... код для работы с выбранным ордером при совпадении тикетов
}
E em geral, a seleção da ordem deve ser feita usando a função OrderSelect() no laço:
for (i=0; i<OrdersTotal(); i++) { // цикл по всем рыночным ордерам терминалаif (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) { // Если выбран любой рыночный ордер с индексом iif (OrderSymbol()!=Symbol()) continue; // Если символ не текущего графика, переходим к выбору следующего ордераif (OrderMagicNumber()!=Magic) continue; // Если его магик не совпадает с магиком советника - переходим к выбору следующего//... далее можно проверять другие параметры выбранного ордера, но в этом месте уже есть выбранный ордер текущего графика и номером магика советникаif (OrderTicket()==number_ticket) { // проверяем тикет выбранного ордера и, если есть совпадение, выполняем с ним дальнейшие действия// ... код, выполняющий дальнейшие действия с найденным нужным ордером ...
}
}
elseif (!OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) // Иначе, если не удалось выбрать ордерPrint ("Ошибка при выборе ордера из списка рыночных ордеров = ", GetLastError()); // Выведем сообщение об ошибке и её номер в журнал.
}
Este é apenas um exemplo para entender, não o código de trabalho acabado, se é que alguma coisa... :)
Se você tiver apenas um pedido, ele pode funcionar, mas se você abrir mais manualmente, não será o mesmo. O número do bilhete deve ser armazenado em uma variável, e após selecionar um pedido, devemos comparar seu bilhete com o armazenado:
E, em geral, a seleção de pedidos deve ser feita usando a função OrderSelect() no laço:
Este é apenas um exemplo para entender, e não um código de trabalho completo, se é que há alguma coisa... :)
Ao fechar pedidos, se houver mais de um pedido, devemos usar este laço:
int i, k=OrdersTotal();
for (i=k-1; i>=0; i--) {
//...
Você pode me dizer por que a OrderOpenPrice não funciona? A tarefa é procurar no pool um pedido colocado a um determinado preço e, se não estiver lá, colocar o pedido e colocar uma bandeira que tenha sido colocada.
Você pode me dizer por que a OrderOpenPrice não funciona? A tarefa é procurar no pool um pedido colocado a um determinado preço e, se não estiver lá, colocar o pedido e colocar uma bandeira que tenha sido colocada.
Se estamos falando de carrapatos, você pode escrever um código que salve o arquivo de dados, mas precisará carregar a partir de um arquivo no ekspert. Faria sentido simplesmente manter o computador funcionando?
O que você está fazendo é estranho... Ao abrir uma posição, você atribui o número do bilhete a uma variável, mas você verifica outra.
E OrderSend() retorna -1 (menos um) em caso de falha, e você verifica se há menos de um, quando você precisa de menos de zero
Esta é a primeira coisa que chama sua atenção. Mas acho que você tem muitas coisas interessantes lá... :)
Ooh-ha-ha-ha, sim, há muita diversão... Especialmente quando você começa a verificar))
Vamos lá, mais uma vez... É assim,
Eu abro ordem:
Ordem de fechamento:
Certo, dada uma única ordem?)
Aparentemente, a segunda opção deve ser usada. Obrigado, BBSL.
De nada, espero que isso realmente ajude))
O que você está fazendo é estranho... Ao abrir uma posição, você atribui o número do bilhete a uma variável, mas você verifica outra.
E OrderSend() retorna -1 (menos um) em caso de falha, e você verifica se há menos de um, quando você precisa de menos de zero
Esta é a primeira coisa que chama sua atenção. Mas acho que você tem muitas coisas interessantes lá... :)
Entendo, o número do tikit deve ser obtido desta forma:
O que você está fazendo é estranho... Ao abrir uma posição, você atribui o número do bilhete a uma variável, mas você verifica outra.
E OrderSend() retorna -1 (menos um) em caso de falha, e você verifica se há menos de um, quando você precisa de menos de zero
Esta é a primeira coisa que chama sua atenção. Mas acho que você tem muitas coisas interessantes lá... :)
Respeito, obrigado!))
Eu entendo, você tem que obter o número do tickit assim:
Sabe, com apenas um pedido, pode funcionar, mas se você ainda o abrir manualmente, não será o mesmo. O número do bilhete deve ser gravado em uma variável, e após a seleção do pedido devemos comparar seu bilhete com o bilhete armazenado:
E em geral, a seleção da ordem deve ser feita usando a função OrderSelect() no laço:
Este é apenas um exemplo para entender, não o código de trabalho acabado, se é que alguma coisa... :)
Se você tiver apenas um pedido, ele pode funcionar, mas se você abrir mais manualmente, não será o mesmo. O número do bilhete deve ser armazenado em uma variável, e após selecionar um pedido, devemos comparar seu bilhete com o armazenado:
E, em geral, a seleção de pedidos deve ser feita usando a função OrderSelect() no laço:
Este é apenas um exemplo para entender, e não um código de trabalho completo, se é que há alguma coisa... :)
Ao fechar pedidos, se houver mais de um pedido, devemos usar este laço:
Ao fechar pedidos, se houver mais de um pedido, deve ser utilizado um ciclo como este:
Leia a última linha do meu post. Quem disse que eu escrevi um exemplo para fechar?
O resto é a pura verdade. Escreva seu próprio livro didático.
Você pode me dizer por que a OrderOpenPrice não funciona? A tarefa é procurar no pool um pedido colocado a um determinado preço e, se não estiver lá, colocar o pedido e colocar uma bandeira que tenha sido colocada.
Você pode me dizer por que a OrderOpenPrice não funciona? A tarefa é procurar no pool um pedido colocado a um determinado preço e, se não estiver lá, colocar o pedido e colocar uma bandeira que tenha sido colocada.
Não podemos comparar números reais.