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
Boa noite.
Voce abre como falou acima. Script e cola o codigo.
Verifica se vc colou o codigo abaixo da ultima chave que fecha a função OnStart()
E dentro da função OnStart() voce chama a função que vc colou com -->> consultaAjuste("DOL","X19");
Boa noite,
Tentei fazer o mesmo,mas não deu certo.
É preciso preencher os parametros? Quais seriam? não sei com se faz.
Fui compilar e apareceram varios erros tbm.
Poderia explicar como fazer corretamente,
Obrigado
Olá, procurei esta mesma informação e não consegui encontrar então usei a função WebRequest para consultar diretamente no site da B3...funcionou legal...após a consulta coloquei uma linha horizontal no gráfico com o valor do ajuste atual. Assim chamando a função com o índice e o vencimento... consultaAjuste("IND","J19");
void consultaAjuste(string indiceBusca,string vencimento){
string url="http://www2.bmf.com.br/pages/portal/bmfbovespa/boletim1/Ajustes1.asp";
string cookie=NULL,reference=NULL;
string headers;
int timeout=5000;
char post[];
char conteudo[];
int acesso;
ResetLastError();
acesso=WebRequest("GET",url,cookie,reference,timeout,post,0,conteudo,headers);
if(acesso)Print("Sucesso");else Print("Falha");
int size=ArraySize(conteudo);
string concatena=NULL;
for(int i=0;i<size;i++){
concatena+=CharToString(conteudo[i]);
}
int indexInicio=StringFind(concatena,indiceBusca,0);
int index01=StringFind(concatena,vencimento,indexInicio);
int index02=StringFind(concatena,"right",index01);
int index03=StringFind(concatena,"right",index02+7);
string extraidoAnterior=StringSubstr(concatena,index02,100);
string extraidoAtual=StringSubstr(concatena,index03,100);
string ajusteAnterior=StringSubstr(extraidoAnterior,7,6);
string ajusteAtual=StringSubstr(extraidoAtual,7,6);
StringReplace(ajusteAnterior,".","");
StringReplace(ajusteAtual,".","");
double ajusteAnteriorDouble=StringToDouble(ajusteAnterior);
double ajusteAtualDouble=StringToDouble(ajusteAtual);
Print("Ajuste anterior: ",ajusteAnteriorDouble," Ajuste atual: ",ajusteAtualDouble);
ObjectCreate(0,"AjusteAtual",OBJ_HLINE,0,0,ajusteAtualDouble);
ObjectSetInteger(0,"AjusteAtual",OBJPROP_WIDTH,2);
ObjectSetInteger(0,"AjusteAtual",OBJPROP_COLOR,clrBlack);
}
Bom dia! Valter, executei o código, está retornando sucesso, mas com o valor 0.0 para os ajustes, o seu ainda está funcionando?
Bom dia! Valter, executei o código, está retornando sucesso, mas com o valor 0.0 para os ajustes, o seu ainda está funcionando?
Boa noite, Muito bom esse conteúdo. Acabei usando tanto o ajusto como ptax.
Estou precisando agora pegar uma informação que é a quantidade de contratos de gringos no dolar.
Ate achei a informação em ---> http://www2.bmf.com.br/pages/portal/bmfbovespa/lumis/lum-tipo-de-participante-ptBR.asp
mas nao consegui colocar a data retroativa diretamente no endereço pra fazer a busca e alimentar um BD. Alguem poderia dar uma luz ?
Obrigado !!!
Adiel
Poxa se vc conseguir poste o code aqui pra nois :)
Muito bom mesmo! Percebi que além do ajuste atual, é possível implementar ajustes anteriores, uma vez que a página Ajustes1.asp, pode receber na requisição a variável de data (ex: Ajustes1.asp?txtData=13/05/2019)... Logo que me sobrar um tempo, ainda vou trabalhar nisso. Por hora, obrigado e parabéns!
Esse code aceita uma data especifica. Vou trabalhar nele pra pegar uma quantidade x anteriores.
Pessoal, o meu só estava retornando 0. Porém tem um detalhe que ninguém comentou, tem uma nota na documentação do MQL5 que diz:
Para usar a função WebRequest(), adicione os endereços dos servidores necessários na lista de URLs permitidos na guia "Expert Advisors" da janela "Options".
Só depois que eu incluí https://www2.bmf.com.br/pages/portal/bmfbovespa/boletim1/Ajustes1.asp no quadro das URL´s foi que funcionou.
Obrigado a todos pelas dicas.
Galera, fiz um script aqui para pegar os ajustes do dolar para 20 períodos anteriores.
É o meu primeiro script, portanto é possível não estar feito da melhor forma possível.
Esta funcional e já resolveu meu problema aqui.
Funcionalidades do script:
- Pega os dados de ajuste BMF Bovespa
- Formata os dados para um objeto MqlRates para facilitar a formatação e uso.
- Salva os dados em um arquivo csv para não ter que importar os dados do site toda vez que é executado.
(O arquivo é gerado dentro da pasta MQL5/Files)
- Depois carrega os dados de ajuste para o gráfico em linhas horizontais
Esta funcionando no meu MetaTrader v5 build 2981
Para utilizar é colocar na pasta MQL5/Scripts
e depois arrastar para o gráfico do dolar
Bom uso!
\o/
Bom, usei o script do amigo @valterblande durante um bom tempo, com muito sucesso! Abria um instrumento, rodava o script e lá estavam os ajustes atual e anterior atualizados. :-)
Infelizmente, recentemente parece que a B3 resolveu acabar com a graça - leia-se, alterou algumas de suas páginas, então a página anterior (http://www2.bmf.com.br/pages/portal/bmfbovespa/boletim1/Ajustes1.asp) não está mais disponível.
A URL de obtenção dos valores agora está em uma nova página que, no momento, parece também não funcionar: https://www.b3.com.br/pt_br/market-data-e-indices/servicos-de-dados/market-data/historico/derivativos/ajustes-do-pregao/
Alguém já obteve sucesso em atualizar o modo de obter os ajustes automaticamente?
P.S.: continuo investigando, se obtiver alguma atualização, posto aqui