Friday 14 July 2017

Opções De Estoque De Api Google Finance


Vale a pena notar o que o Yahoo diz sobre retirar os preços das ações: parece que alguns criaram engenharia reversa de uma API que usam para extrair dados Financeiros, mas estão quebrando nossos Termos de Serviço (sem redistribuição de dados Financeiros). A redistribuição só é permitida se você estiver usando os emblemas criados pela equipe: finance. yahoobadges. Caso contrário, você pode usar o YQL ou qualquer método para obter dados PARA USO PESSOAL. O desenvolvedor. yahooforumGeneral-Discussão-em-YDNhellip ndash poshaughnessy 17 de outubro 12 às 9:16 Eu segui a resposta superior e comecei a olhar para as finanças do Yahoo. A sua API pode ser acessada de várias maneiras diferentes, mas encontrei uma referência agradável para obter informações conservadas em estoque como um CSV aqui: jarloo Usando isso, escrevi esse script. Eu não sou realmente um cara de ruby, mas isso pode ajudá-lo a cortar algo juntos. Eu não souber com nomes de variáveis ​​para todos os campos que você já oferece, então você pode preencher esses itens se você precisar deles. Heres o uso loadStockInfo retorna um hash, de modo que SpecificDataGOOGname é o Google Inc. Finalmente, o código atual para executar isso. Respondeu 26 de março 15 às 12:07 isso é realmente útil, gostaria de poder dar-lhe mais votos. Pergunta rápida - você achou que esta API era confiável e são as citações realmente em tempo real, eu sei que algumas informações da Yahoo39s são atrasadas, e parece depender da API específica que você acessa. Ndash hundley 30 de outubro 15 às 2:31 Eu fiz isso para ajudar um amigo e eu acho que acabou trabalhando bem para ele. A informação é bastante rápida, acho que eles atualizaram a cada 1015 minutos se eu me lembro corretamente. Ndash Jack Franzen 30 de outubro 15 às 11: 56 Há uma maneira pouco conhecida de obter informações da cadeia de opções do Google, isso mostrará como it8217s foi feito, bem como demonstrar como usá-lo usando C. (Fácil o suficiente em qualquer idioma, uma vez que é baseado em REST baseado em 8217s , Então, se você não for um desenvolvedor do C don8217t, deixe isso para você.) ISTO NÃO É UMA API OFICIAL. A GOOGLE NÃO APOIO A ESTE PARA QUALQUER COISA, MAS SEUS PRÓPRIOS USOS INTERNOS E PODEM MUDAR EM QUALQUER MOMENTO. USE ISSO A SEU PRÓPRIO RISCO. Acessando a API de opções de estoque do Google baseada em REST, o Google lista opções de ações no site de finanças. Um exemplo disso é este para a cadeia de opções AAPL8217s. Com uma modificação muito pequena para isso, você pode obter os dados em formato JSON. (Não é exatamente o JSON, abordarei isso abaixo) A diferença entre o site e a API é a adição de uma seqüência de consulta simples 8220outputjson8221. Então, o URL se torna: 8220googlefinanceoptionchainqAAPLampoutputjson8221 Compreendendo a API da Opção do Google Chamando 8220googlefinanceoptionchainqAAPLampoutputjson8221 irá devolver vários dados: O próximo prazo de validade Uma lista de todas as datas de validade disponíveis para o símbolo Uma lista de todos os coloca Uma lista de todas as chamadas O Preço do estoque subjacente (não o preço da opção.) Aqui está um trecho dos dados de retorno: obviamente, há mais datas de expiração nas opções AAPL e mais chamadas mais eu não mostrei as chamadas, mas acho que isso deve dar uma idéia Da estrutura geral. Isso só funciona para o mais recente prazo de validade. Todas as opções retornadas serão apenas para esse período de validade. Você pode selecionar uma expiração diferente com bastante facilidade: você notará a adição de três novas cadeias de consulta, que indicam o ano, mês e dia da expiração. Eu acho melhor chamar o URL anterior para obter a lista de datas de validade válidas, então use esta para obter todas as greves para um prazo de validade específico. Mas os resultados não são válidos JSON Infelizmente eles não são. Se você olhar para a amostra colada acima, você notará que o nome e o valor devem ser incluídos entre aspas, mas não são. Na verdade, NENHUM dos nomes estão entre aspas e apenas alguns dos valores são. Para corrigir isso, eu o executo através de uma expressão regular para cercar os nomes e valores entre aspas antes de tentar fazer um objeto fora do JSON. É aí que difere de um idioma para o próximo, mas para C. Faço o seguinte: Usando esta opção chain API em seus programas. Isso assume que você está usando o. NET 4.5 ou superior. Ele funcionará com outras versões, mas talvez seja necessário remover a lógica 8220asyncawait8221 talvez o Thread. Run também. Em C it8217s simples de consumir esta API e obter objetos funcionais a partir dele. Primeiro, comecemos com os arquivos de definição necessários para transformar esse quase-JSON em objetos. NET. Dica: se a sua dúvida se eu digitei tudo na resposta é não. O Visual Studio possui uma ótima função pouco conhecida. Copie o JSON da chamada google api e, em Visual Studio, goto Edit-gtPaste Special-gtPaste JSON como Classes. E isso faz o trabalho para você (eu fiz um pouco isso, mas deixe o VS fazer um mapeamento aborrecido para você.) Então, uma vez que temos a estrutura básica de como armazenar essas chamadas como descrito acima, precisamos obter os dados e corrigi-los. Problemas da JSON. Nisto criamos um WebClient para buscar os dados. Eu faço isso em um segmento separado, não é necessário em todos os casos, mas se você encaixar isso em UI, isso impedirá que sua UI seja bloqueada enquanto isso está recebendo os dados. Em seguida, ele chama um dos dois URL8217s mostrado anteriormente, tudo dependendo se o dia de término, mês e ano tiverem sido passado. O JSON é limpo, então ele o converte em um objeto. Essa chamada para. FromJsonlt8230gt () é uma função de extensão que eu escrevi que I8217m usando. It8217s usando a análise JSON da montagem System. Runtime. Serialization. Eu uso isso em todo o lugar na maioria dos meus projetos e, mais tarde, usarei uma função de extensão. Toltgt (), então I8217ll listá-lo aqui também. Tenha em mente que você pode usar qualquer analisador JSON, como JSON. NET, esta é apenas minha preferência. Adicionando uma IU nos Dados da Cadeia de Opções, de modo a abranger a obtenção dos dados. Se você quiser fazer uma tabela de cadeias de opções com chamadas de um lado, ataca no meio e put8217s, por outro lado, é fácil de usar usando WPF e o Google Option API Code que postei no GitHub inclui apenas um exemplo. Sim, eu sei que isso é digno, mas queria exibir o conceito sem tornar o código mais difícil, adicionando mais funcionalidade ou estilo, então necessário. Para obter esse layout, criei uma nova classe chamada OptionPair. It8217s utilizados apenas pela UI para exibir essas linhas. Cada linha é um objeto OptionPair, que é uma colocação, chamada e greve. Eu não usei o MVVM para isso, novamente eu queria manter isso simples, então é uma única janela do WPF com algum código para trás. Aqui está a listagem de código completo para a janela: a maioria deve ser bastante fácil de entender. Quando um usuário insere um ticker de ações e clica em um botão, ele obtém os dados iniciais que são para o cadastramento mais recente para essa opção. As datas de validade que são retornadas são então colocadas em uma coleção a ser exibida em uma caixa suspensa para que o usuário escolha uma diferente. Os objetos OptionPair são criados e exibidos na grade. Se o usuário selecionar uma nova data de validade, então o método FetchData () é chamado que recebe novos dados e preenche a grade. Aqui está o XAML Nenhuma surpresa aqui apenas vinculando os objetos. O único aspecto é o ExpirationConverter que leva o ano, o mês, o formato do dia, o Google retorna e o muda para algo melhor para exibir: espero que você tenha gostado desta olhada nesta API de cadeia de opções útil e interessante do Google. Tenha em mente que isso não é suportado pelo Google, então eu não gostaria de sugerir o uso dele em um aplicativo de nível de produção, mas é interessante jogar. Se você quiser expandir isso para adicionar gregos como delta, gamma, vega etc. Eu tenho outro artigo que você pode querer dar uma olhada em: Vanilla Option Math Compartilhe isto: Postado: 10 de dezembro de 2015 12:02 Randy Guidry Oi. Estou tendo problemas para usar a chamada googlefinanceoptionchainqAAPLampoutputjson com javascript. Você pode me enviar um pequeno fragmento de código javascript para fazer a chamada e exibir parte do resultado, diga apenas o primeiro item, expira? Agradeço antecipadamente, Randy Postado: 16 de dezembro de 2015 21:09 Kelly Elias Desculpe, eu não tenho nenhum Javascript para Dê-lhe, eu faço principalmente C. Meu Javascript é fraco, já que há muito tempo, desde que eu realmente fiz muito com isso. Postado: 26 de agosto de 2016 23:40 Randy. Ainda preciso de ajuda sobre isso, posso dar-lhe algumas dicas. Publicado: 19 de outubro de 2016 13:38 Randy Guidry Kenny, Sim, eu ainda poderia usar alguma ajuda. Eu abandonei há alguns meses atrás porque estava recebendo um erro de política de mesma origem ao tentar ligar para a API do Google. Você sabe como contornar isso. Publicado em: 28 de março de 2016 10:51 E quanto a obter dados para várias empresas ao mesmo tempo Isso parece ter utilidade muito limitada se você deve enviar spam seu servidor com 1 pedido por empresa. Você não consegue obter o seu IP bloqueado Publicado: 15 de julho de 2016 10:37 Oi: Estou usando o seu programa Opções de dados da cadeia com a GUI, compila bem, mas quando vejo os valores estão completos errado No site da Google Options, por exemplo, de julho a 15-2016. , Eu consulta a cadeia de opções para AAPL e eu seleciono a data de validade agosto-26-2016 e vejo o preço de exercício 100 para PUT no último preço 3.70, e no seu programa eu recebo Last Price 1.20. Por que os valores de PUTs estão errados Obrigado TonyDownloading Option Chain Data do Google Finance em R: Uma Atualização Eu li recentemente um artigo que mostrava como fazer o download de dados da Cadeia de Opções do Google Finance usando R. Curiosamente, esse artigo parece ser um fim Adaptação de outro artigo que faz a mesma coisa usando o Python. Ao brincar com o código desses artigos, notei um par de coisas que poderiam se beneficiar de pequenos ajustes. Antes de olhar para aqueles, porém, vale a pena assinalar que já existe uma função no quantmod para recuperar os dados da Cadeia de Opções do Yahoo Finance. O que estou fazendo aqui é, portanto, mais para minha própria edificação pessoal (mas, espero, você também achará interessante). Antecedentes Uma Cadeia de opções é apenas uma lista de todas as opções disponíveis para uma segurança específica que abrange um intervalo de datas de validade. Primeiro, precisamos carregar alguns pacotes que facilitam o download, a análise e a manipulação dos dados. We8217ll estar recuperando os dados no formato JSON. Um tanto perturbadoramente os dados JSON do Google Finance não parecem ser totalmente compatíveis com os padrões JSON porque as chaves não são citadas. We8217ll usa uma função auxiliar que irá percorrer os dados e inserir as cotações em torno de cada uma das chaves. O código original para esta função passou por uma lista de nomes de teclas. Isso é um pouco ineficiente e também seria problemático se outras chaves fossem introduzidas. Podemos contornar isso usando uma abordagem diferente que evita a estipulação de nomes de chaves. Para tornar a função de download mais concisa, we8217ll também define dois modelos de URL. E, finalmente, a própria função de download, que procede através das seguintes etapas para um símbolo de ticker especificado: os dados de resumo de downloads extrai datas de validade dos dados de resumo e baixa os dados de opções para cada uma dessas datas concatena esses dados em uma única estrutura. Nomes de colunas e seleciona um subconjunto. Let8217s dar um giro. (Os dados abaixo foram retrived no sábado 10 de janeiro de 2015). Isto é o que os dados resultantes se parecem, com todas as datas de validade disponíveis consolidadas em uma única tabela: há uma quantidade de dados lá. Para ter uma idéia do que parece, podemos gerar algumas parcelas. Abaixo está o interesse aberto como uma função do preço de greve em todas as datas de validade. O preço subjacente é indicado pela linha tracejada vertical. Como se poderia esperar, a maior parte do interesse está associada à próxima data de validade em 17 de janeiro de 2015. It8217s é bem claro que esta não é a melhor forma de analisar esses dados e eu ficaria extremamente interessado em ouvir alguém com uma sugestão para Uma melhor visualização. Tentando olhar para todas as datas de validade em conjunto, provavelmente é o maior problema, portanto, deixe8217 concentrar nossa atenção nas opções que expiram em 17 de janeiro de 2015. Novamente, o preço subjacente é indicado por uma linha tracejada vertical. Esta é a primeira vez que eu tenho um olhar serio sobre os dados das opções, mas agora vou confessar facilmente intrigado. Tendo os dados disponíveis, não há motivo para não explorar mais. Detalhes a seguir. Nunca perca uma atualização Assine os R-bloggers para receber e-mails com as últimas postagens R. (Você não verá esta mensagem novamente).

No comments:

Post a Comment