Como implementar o fechamento das posições um de cada vez após N minutos ? - página 4

 
Vitaly Muzichenko:

Meu ponto de vista é que ofechamento só pode ser 0(falso) ou 1(verdadeiro), não há outro.

Mostrarei novamente a função, eu a dei a vocês hoje, ela funcionou hoje e vou deixá-la assim.

Fórum sobre comércio, sistemas comerciais automatizados e estratégias comerciais de teste

Como implementar o fechamento de uma posição após N-minutos ?

Natalya Dzerzhinskaya, 2017.11.22 19:17


(OrderCloseTime()> 0) funciona, vou deixá-lo assim então

Obrigado novamente))))


Também fecha multa, mas após fechar diz erro 4108"Número de bilhete inválido".



 
Vitaly Muzichenko:

Meu ponto é que ofechamento só pode ser 0(falso) ou 1(verdadeiro), não há outra opção.

O mesmo, para a confiabilidade, é melhor escrever:

para estar seguro.

você deve sempre(!!!) usar o valor encontrado para ele na função, para ter certeza de que usamos os parâmetros corretos e necessários da função

 
Renat Akhtyamov:

Mais uma vez, aqui está a função, eu a dei a você hoje, você a trabalhou hoje, e é o fim de tudo.

Dizer obrigado não significa que você esteja certo, que você é um adulto e que você deve perceber isso.

Isto é como ir a uma estação de serviço e dizer obrigado ao reparador, dizendo que o carro dirige bem após o reparo, mas as válvulas estão batendo. Você entendeu?

É isso aí - desapareceu).

 

os professores estão em todo o lugar.... todos que se importam....

sou o único que sabe não mexer com as funções comerciais

tudo deve ser feito 5+

Todo erro é um desperdício de dinheiro!

 
Taras Slobodyanik:
É possível fechar os pedidos imediatamente se você tiver pesquisado através deles.
Por que devemos buscar o tempo? Comparar - fechar - próximo.

A condição ali é encontrar apenas uma ordem que esteja aberta primeiro. E sem uma busca completa das encomendas é impossível saber que a ordem de sucção é a mais antiga.

 
Renat Akhtyamov:

os professores estão em todo o lugar.... todos que se importam....

sou o único que sabe não mexer com as funções comerciais

Tudo tem que ser 5+.

todo erro é uma perda de dinheiro!

Renat, esta condição não se manterá mesmo no apocalipse, você pode verificá-la:

                  if(OrderSelect(MyTicketBuy, SELECT_BY_TICKET)==true)
                  {
                     close=OrderClose(MyTicketBuy,OrderLots(),MarketInfo(OrderSymbol(),MODE_ASK),0,clrRed);
                     if(close<0){if(Fun_Error(GetLastError())==1)return;}
                  }
                  if(OrderSelect(MyTicketSell, SELECT_BY_TICKET)==true)
                  {
                     close=OrderClose(MyTicketSell,OrderLots(),MarketInfo(OrderSymbol(),MODE_BID),0,clrBlue);
                     if(close<0){if(Fun_Error(GetLastError())==1)return;}
                  }
 
Vitaly Muzichenko:

Renate, esta condição não se manterá mesmo em um apocalipse, você pode verificar:

bem, o homem usou meu código!!!!

o erro apareceu?????

Vitaly, pare com isso...

ou vá se torturar se não acredita em mim.

 
Ihor Herasko:

A condição ali é encontrar apenas uma ordem que esteja aberta primeiro. E sem uma busca completa dos pedidos é impossível descobrir que tal e tal pedido é o mais antigo.

De acordo com a condição, não pode ser aberto por mais de 5 minutos, ou seja, você pode procurar livremente em ordem, e fechar com mais de 5 minutos, será o mais antigo.

 
Renat Akhtyamov:

bem, o homem usou meu código!!!!

erro de imagem?????


É isso mesmo, ele (o erro) nunca será visível. Mesmo que apareça. A variável fechada deve ser do tipo bool, que nunca tem um valor inferior a zero.

 
Renat Akhtyamov:

Bem, o homem usou meu código!!!!

erro lançado?????

Não se trata de ser usado ou não usado.

Mais uma vez:

Fórum sobre comércio, sistemas automatizados de comércio e testes de estratégia comercial

Como implementar o fechamento de posição após N-minutos ?

Vitaly Muzichenko, 2017.11.22 20:28

Sob que condições isto pode funcionar, pelo menos uma vez a cada 100 anos ?

                  if(OrderSelect(MyTicketBuy, SELECT_BY_TICKET)==true)
                  {
                     close=OrderClose(MyTicketBuy,OrderLots(),MarketInfo(OrderSymbol(),MODE_ASK),0,clrRed);
                     if(close<0){if(Fun_Error(GetLastError())==1)return;}
                  }
                  if(OrderSelect(MyTicketSell, SELECT_BY_TICKET)==true)
                  {
                     close=OrderClose(MyTicketSell,OrderLots(),MarketInfo(OrderSymbol(),MODE_BID),0,clrBlue);
                     if(close<0){if(Fu n_Error(GetLastError())==1)return;}
                  }