Hi,
How can I get de expiration date from an Index, like the Description window?
I tried use the code below, however dind't work.
datetime m_Expiration = (datetime)SymbolInfoInteger(_Symbol, SYMBOL_EXPIRATION_TIME);
the date returned is D'1970.01.01 00:00:00'
Por quê a pergunta em ingles???
Este Fórum está virando uma zona...
lamentável.
Boa Flávio,
eu simplesmente ignoro.
Hi,
How can I get de expiration date from an Index, like the Description window?
I tried use the code below, however dind't work.
datetime m_Expiration = (datetime)SymbolInfoInteger(_Symbol, SYMBOL_EXPIRATION_TIME);
the date returned is D'1970.01.01 00:00:00'
Abraço e boa sorte!
Olá Glayton, estou tendo problemas com esse "invalid expiration" em ordens pendentes (já testei inúmeras soluções dadas no fórum e nenhuma resolveu), não sei ao certo o que se passa, vi tbm que esse erro aparece quando rodamos o backtest enquanto o mercado está fechado.. na próxima semana testarei durante o pregão
Abraço e boa sorte!
Oi, Rodrigo. Essa função funciona perfeitamente para as opções, infelizmente o mesmo não ocorre para o índice futuro. Até imaginei que podeira ser um outro parâmetro ou função, mas até o momento sem sucesso. Avise caso tenha algum progresso.
Obrigado pelo retorno.
Oi, Rodrigo. Essa função funciona perfeitamente para as opções, infelizmente o mesmo não ocorre para o índice futuro. Até imaginei que podeira ser um outro parâmetro ou função, mas até o momento sem sucesso. Avise caso tenha algum progresso.
Obrigado pelo retorno.
Olá Glayton, infelizmente até o momento não encontrei respostas para essa questão, o máximo são suposições sobre nossos brokers serem incompatíveis, não aceitam a informação, diferentemente dos forex que por funcionarem 24h tem sistema de datas e validades diferentes (é pelo menos minha conclusão).
Eu estava tentando fazer as famosas ordens OCO, consegui usando OrderOpen do CTrade:
if(m_trade.OrderOpen(Symbol_Name,ORDER_TYPE_BUY_STOP_LIMIT,1,price,price,sl,tp,ORDER_TIME_DAY,0,"robô 20"))
Print("BuyLimit - > true. ticket of order = ",m_trade.ResultOrder());
No meu teste de expert, ele coloca as 2 ordens pendentes com X pontos de distância da cotação (venda abaixo e compra acima), caso ele execute uma das ordens (com lucro ou prejuízo) a outra ordem não executada é cancelada, e novo par de ordens é colocado respeitando as distâncias novamente.
Observe que no parâmetro expiration_date o valor é zero, e funciona mesmo assim.
Bom, fugi um pouco da questão, mas enfim, foi só dessa forma que consegui que as ordens pendentes fossem aceitas/colocadas.
Abraço e boa sorte aí!!
Olá Rodrigo,
tomei dois exemplos de ativos, assinalado em azul atributo TERMINO DE VALIDADE, ou seja os valores que você pode colocar na ordem.
Exemplo: AMBV3 você pode especificar uma data hora para termino de validade da ordem. WDOM22 não é permitido especificar uma data hora para termino de validade ,obrigatoriamente a validade da ordem deve ser HOJE.
Olá Glayton, infelizmente até o momento não encontrei respostas para essa questão, o máximo são suposições sobre nossos brokers serem incompatíveis, não aceitam a informação, diferentemente dos forex que por funcionarem 24h tem sistema de datas e validades diferentes (é pelo menos minha conclusão).
Eu estava tentando fazer as famosas ordens OCO, consegui usando OrderOpen do CTrade:
if(m_trade.OrderOpen(Symbol_Name,ORDER_TYPE_BUY_STOP_LIMIT,1,price,price,sl,tp,ORDER_TIME_DAY,0,"robô 20"))
Print("BuyLimit - > true. ticket of order = ",m_trade.ResultOrder());
No meu teste de expert, ele coloca as 2 ordens pendentes com X pontos de distância da cotação (venda abaixo e compra acima), caso ele execute uma das ordens (com lucro ou prejuízo) a outra ordem não executada é cancelada, e novo par de ordens é colocado respeitando as distâncias novamente.
Observe que no parâmetro expiration_date o valor é zero, e funciona mesmo assim.
Bom, fugi um pouco da questão, mas enfim, foi só dessa forma que consegui que as ordens pendentes fossem aceitas/colocadas.
Abraço e boa sorte aí!!
Olá Rodrigo,
Testei meu código hoje e a função funcionou perfeitamente. Não sei como se dá a informação, mas a função que apresentava falha, por algum motivo foi corrigida.
m_Expiration = (datetime)SymbolInfoInteger("WINQ22", SYMBOL_EXPIRATION_TIME);
m_Expiration = D'2022.08.17 19:15:00'
Era exatamente essa informação que estava precisando (vencimento do contrato futuro de índice).
Abraços e obrigado pelo retorno.
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Você concorda com a política do site e com os termos de uso
Hi,
How can I get de expiration date from an Index, like the Description window?
I tried use the code below, however dind't work.
datetime m_Expiration = (datetime)SymbolInfoInteger(_Symbol, SYMBOL_EXPIRATION_TIME);
the date returned is D'1970.01.01 00:00:00'