Thursday, 15 March 2018

Financiamento de opções de ações


O que é financiamento de ações?
Financiamento de ações | Trade Finance Global.
Financiamento de ações | O Guia de 2017 para Importadores e Exportadores.
É importante notar que o financiamento de ações difere do financiamento direto do capital de giro no que se refere ao movimento, compra e / ou venda de bens e serviços tanto no mercado interno quanto internacional.
O financiamento de ações é um tipo de empréstimo usado por muitas empresas de comércio internacional e transnacional. É importante notar que há uma diferença no comércio exterior e outros tipos de financiamento da cadeia de suprimentos ou fatura.
O financiamento de ações é um tipo de financiamento em que o mutuário usa os fundos de um credor para comprar o produto a ser vendido. Isso geralmente é estoque que vai ficar no armazém para vender. Uma razão pela qual isso pode ser usado em vez do trade finance é que, como não haverá pedidos de compra confirmados, o estoque-tampão é necessário ou o estoque será vendido a clientes onde o financiamento comercial não é aplicável. Um exemplo disso é vender para consumidores individuais on-line.
O que o Stock Finance Include inclui?
O financiamento de ações abrange uma variedade de serviços financeiros destinados a facilitar o comércio transfronteiriço e doméstico. Devido ao número de produtos disponíveis e variedade de indústrias e bens cobertos, há uma ampla gama de ferramentas utilizadas. Estes incluem contas de importação para coleta, LCs, exportação pré-embarque, garantias de envio e fatoração e desconto de faturas.
Concessão de empréstimos para emissão de LCs. Faturamento de seguro de crédito à exportação.
Os produtos que podem ser comprados usando uma facilidade de financiamento de ações incluem:
Importadores Exportadores Exportadores Agências de Crédito Seguradoras Financiadores Bancos Outros Prestadores de Serviços.
Importação Finanças Exportação Carta de Crédito Descontos Garantias Avalizing Forfaiting de Letras de Câmbio Seguro de Crédito Coleção Documentária Comércio de Crédito Seguro Factoring Soluções Personalizadas.
Entre em contato com nossos especialistas em finanças de ações, mesmo que você já tenha uma instalação existente.
Como funciona o financiamento de ações?
Por que usar uma facilidade de financiamento de ações?
Muitas empresas não conseguem trabalhar com base em uma facilidade normal de financiamento comercial; onde existe um comprador e vendedor. Na verdade, eles precisarão comprar e armazenar ações. Isto será por muitas razões, algumas das quais são descritas abaixo:
Proteger a reputação por não ser subestimado Risco de cobertura Ter estoque para fornecer flutuações sazonais Exigir ajuste em determinados produtos Requisitos para compradores e fornecedores.
O financiamento de ações é parte integrante de negócios de negociação onde há negociações que não têm uma correspondência direta entre o pedido de compra e o fornecedor e onde as mercadorias fluem diretamente para o comprador final.
Outra razão, é para cobrir o risco no comércio internacional e fluxo de caixa. Existe um risco para o importador de que o exportador possa simplesmente aceitar o pagamento e recusar a entrega. Por outro lado, se o exportador estender uma instalação ao importador, ele poderá se recusar a efetuar pagamentos ou adiar desnecessariamente. Para resolver este problema óbvio, pode-se usar uma LC, que é aberta no nome do exportador pelo importador através de um banco, em seu país de negócios. A LC é um mecanismo pelo qual o banco garante o pagamento ao exportador. Como exemplo, o banco do importador pode fornecer uma LC ao banco do exportador concordando em pagar mediante a apresentação de certos documentos, por ex. um conhecimento de embarque. O banco do exportador pode fornecer um mecanismo de financiamento ao exportador com base no contrato de exportação.
Um LC é o mecanismo de financiamento de ações mais tradicional.
A segurança é de extrema importância em qualquer transação de financiamento de ações e dependerá em grande parte do rastreamento verificável e seguro dos riscos físicos e dos eventos na cadeia entre as duas partes. Com várias técnicas de mitigação de risco, novos produtos sob medida e avanços tecnológicos, isso permite reduzir o risco quando o pagamento adiantado é fornecido ao exportador, mantendo as condições de pagamento normais do importador e sem sobrecarregar o balanço do importador.
Exemplos de financiamento de ações.
1. varejista on-line.
Um varejista on-line vende produtos eletrônicos ao público. A fim de ter estoque buffer suficiente para um período pesado de negociação de volume, eles precisam ter pelo menos 6 semanas de estoque. O pagamento é feito no ponto de venda através de um clique no site, para que não haja pré-encomenda ou compra. Uma previsão de vendas é feita e, com base nisso, estoque suficiente é financiado e comprado. O financiador terá segurança sobre o estoque no depósito e geralmente há um período de tempo definido, que geralmente é de 90 a 120 dias em que o estoque pode estar no depósito.
2. Fabricante licenciado.
Um fabricante de produtos vendia produtos em todo o mundo e comprava do extremo oriente. Isso pode estar em uma base de negociação ou financiamento de ações & ndash; seria o trade finance se os compradores fizessem um pedido e houvesse uma compra correspondente dos fornecedores. No caso em que não há uma compra de um comprador final digno de crédito e de fato o estoque é necessário para vender no mercado, então o financiamento de ações é usado.
3. Vendedor de mercadorias.
Um comerciante de commodities estava segurando uma grande quantidade de ações com pedidos pré-compra que estavam sendo vendidos ao longo de um período de tempo. Eles precisavam de financiamento contra as ações mantidas no depósito e, assim, um credor concordou em fazer avançar os recursos contra esse produto & ndash; esse montante adiantado mudaria à medida que o estoque flutuasse e seria medido em diferentes períodos ao longo da vida da mercadoria em movimento. Isto é por vezes referido como um recurso de base de empréstimo.

O que é uma 'opção'
Uma opção é um derivativo financeiro que representa um contrato vendido por uma parte (o lançador da opção) para outra parte (o detentor da opção). O contrato oferece ao comprador o direito, mas não a obrigação, de comprar (chamar) ou vender (colocar) um título ou outro ativo financeiro a um preço acordado (o preço de exercício) durante um certo período de tempo ou em um específico data (data do exercício).
No dinheiro.
Contrato de Opções.
Coloque em uma chamada.
QUEBRANDO PARA BAIXO 'Opção'
As opções são títulos extremamente versáteis. Os traders usam opções para especular, o que é uma prática relativamente arriscada. Outros usam opções para reduzir o risco de manter um ativo. Em termos de especulação, os compradores e escritores de opções têm visões conflitantes em relação à perspectiva sobre o desempenho de um título subjacente.
Opção de chamada.
As opções de compra dão a opção de comprar a determinado preço, para que o comprador queira que a ação suba. Por outro lado, o escritor de opções precisa fornecer as ações subjacentes no caso de o preço de mercado da ação exceder a greve devido à obrigação contratual. Um redator de opção que vende uma opção de compra acredita que o preço da ação subjacente cairá em relação ao preço de exercício da opção durante a vida da opção, pois é assim que ele obterá o lucro máximo.
Essa é exatamente a perspectiva oposta do comprador da opção. O comprador acredita que o estoque subjacente aumentará; se isso acontecer, o comprador poderá adquirir a ação por um preço menor e depois vendê-la com lucro. No entanto, se o estoque subjacente não fechar acima do preço de exercício na data de vencimento, o comprador da opção perderia o prêmio pago pela opção de compra.
Opção de venda
As opções de venda dão a opção de vender a um determinado preço, para que o comprador queira que a ação caia. O oposto é verdadeiro para escritores de opção de venda. Por exemplo, um comprador de opções de venda é de baixa sobre as ações subjacentes e acredita que seu preço de mercado cairá abaixo do preço de exercício especificado em ou antes de uma data especificada. Por outro lado, um lançador de opções que reduzir uma opção de venda acredita que o preço do estoque subjacente aumentará em torno de um preço especificado na data de vencimento ou antes dela.
Se o preço da ação subjacente fechar acima do preço de exercício especificado na data de vencimento, o lucro máximo do lançador da opção de venda será alcançado. Por outro lado, um detentor de opção de venda só se beneficiaria de uma queda no preço da ação subjacente abaixo do preço de exercício. Se o preço da ação subjacente cair abaixo do preço de exercício, o lançador da opção de venda é obrigado a comprar ações da ação subjacente ao preço de exercício.

Opção de ações.
O que é uma 'Stock Option'?
Uma opção de compra de ações é um privilégio, vendido por uma parte a outra, que dá ao comprador o direito, mas não a obrigação, de comprar ou vender uma ação a um preço acordado dentro de um determinado período de tempo. As opções americanas, que compõem a maioria das opções de ações negociadas em bolsa, podem ser exercidas a qualquer momento entre a data da compra e a data de vencimento da opção. Por outro lado, as opções européias, também conhecidas como "opções de ações" no Reino Unido, são ligeiramente menos comuns e só podem ser resgatadas na data de vencimento.
Ligue para um put.
Coloque em uma chamada.
Contrato de Opções.
Opção negociada em bolsa.
QUEBRANDO PARA BAIXO 'Stock Option'
O contrato de opção de compra de ações é entre duas partes autorizadas e as opções normalmente representam 100 ações de uma ação subjacente.
Colocar e chamar opções.
Uma opção de ações é considerada uma chamada quando um comprador celebra um contrato para comprar uma ação a um preço específico em uma data específica. Uma opção é considerada uma colocação quando o comprador da opção tira um contrato para vender uma ação a um preço acordado em ou antes de uma data específica.
A ideia é que o comprador de uma opção de compra acredite que o estoque subjacente aumentará, enquanto o vendedor da opção pensa o contrário. O detentor da opção tem o benefício de comprar a ação com desconto em relação ao seu valor de mercado atual se o preço da ação aumentar antes da expiração. Se, no entanto, o comprador acreditar que uma ação diminuirá de valor, ele entrará em um contrato de opção de venda que lhe dará o direito de vender a ação em uma data futura. Se o estoque subjacente perder valor antes do vencimento, o detentor da opção poderá vendê-lo por um prêmio a partir do valor de mercado atual.
O preço de exercício de uma opção é o que determina se ela é valiosa ou não. O preço de exercício é o preço predeterminado em que o estoque subjacente pode ser comprado ou vendido. Os detentores de opções de compra lucram quando o preço de exercício é menor do que o valor de mercado atual. Coloque o lucro dos detentores de opções quando o preço de exercício for maior que o valor de mercado atual.
Opções de ações do empregado.
As opções de ações dos funcionários são semelhantes às opções de compra ou venda, com algumas diferenças importantes. As opções de ações dos funcionários normalmente são adquiridas em vez de ter um prazo especificado até o vencimento. Isso significa que um empregado deve permanecer empregado por um período de tempo definido antes que ele ganhe o direito de comprar suas opções. Há também um preço de subsídio que toma o lugar de um preço de exercício, que representa o valor atual de mercado no momento em que o empregado recebe as opções.

Financiamento de opções de ações
Há uma maneira pouco conhecida de obter informações da cadeia de opções do Google. Isso mostrará como isso é feito, além de demonstrar como usá-lo usando o C #. (Fácil o suficiente em qualquer idioma, uma vez que é baseado em REST, portanto, se você não é um desenvolvedor de C #, não deixe que isso o impeça.)
ESTA NÃO É UMA API OFICIAL. A GOOGLE NÃO APOIA ISTO PARA QUALQUER COISA, MAS OS SEUS PRÓPRIOS APLICAÇÕES INTERNAS E PODEM MUDAR A QUALQUER MOMENTO. USE ISSO A SEU PRÓPRIO RISCO.
Acessando a API do Google Stock Options 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 da AAPL.
Com uma modificação muito pequena, você pode obter os dados em um formato similar ao JSON. (não é exatamente JSON, vou cobrir isso abaixo)
A diferença entre o site e a API é a adição de uma string de consulta simples & # 8220; output = json & # 8221 ;.
Assim, o URL se torna: & google / finance / option_chain? Q = AAPL & output = json & # 8221;
Compreender a API da opção Google.
Chamando & # 8220; google / finance / option_chain? Q = AAPL & saída = json & # 8221; retornará vários dados:
A próxima data de expiração Uma lista de todas as datas de expiração disponíveis para o símbolo Uma lista de todos os puts 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á muito mais datas de expiração nas opções AAPL e mais chamadas, além de eu não mostrar as chamadas, mas acho que isso deve dar uma idéia da estrutura geral.
Isso só funciona para o último vencimento. Todas as opções retornadas serão apenas para essa expiração. Você pode selecionar uma expiração diferente com bastante facilidade:
Você notará a adição de três novas strings de consulta, que denotam o ano, mês e dia da expiração. Acho melhor chamar o URL anterior para obter a lista de datas de expiração válidas e usá-lo para obter todos os avisos de uma data de expiração específica.
Mas os resultados não são válidos JSON?
Infelizmente eles não são. Se você olhar o exemplo colado acima, você notará que o nome e o valor devem ser colocados 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 por meio de uma expressão regular para cercar os nomes e valores entre aspas antes de tentar criar um objeto fora do JSON.
Este é o lugar onde ele difere de um idioma para o próximo, mas para C # eu faço o seguinte:
Usando esta opção chain chain em seus programas.
Isso pressupõe que você está usando 4.5 ou superior. Ele funcionará com outras versões, mas você pode precisar remover o & # 8220; async / await & # 8221; lógica talvez o Thread. Run também.
Em C #, é simples consumir esta API e obter objetos funcionais a partir dela.
Primeiro, vamos começar com os arquivos de definição necessários para transformar esse quase-JSON em objetos:
Dica Pro: Se você está se perguntando se eu digitei tudo isso na resposta é não. O Visual Studio tem uma função pouco conhecida. Copie o JSON dessa chamada do google api e, em seguida, no Visual Studio, clique em Editar - & gt; Colar especial - & gt; Colar JSON como classes. E isso faz o trabalho para você! (Eu ajustei um pouco, mas deixei o VS fazer um mapeamento chato para você.)
Então, quando tivermos a estrutura básica de como armazenar essas chamadas, conforme descrito acima, precisamos obter os dados e corrigir esses problemas de JSON.
Neste nós criamos um WebClient para buscar os dados. Eu faço isso em um thread separado, não é necessário em todos os casos, mas se você vai ligar isso a uma interface do usuário isso impedirá que sua interface do usuário seja bloqueada enquanto isso está recebendo os dados.
Em seguida, ele chama uma das duas URLs mostradas anteriormente, todas dependendo se o dia da expiração, o mês e o ano foram passados.
O JSON é limpo e depois é convertido em um objeto.
Essa chamada para. FromJson & lt; & # 8230; & gt; () é uma função de extensão que escrevi e que estou usando. Ele está usando a análise JSON do assembly System. Runtime. Serialization.
Eu uso isso em todo o lugar na maioria dos meus projetos, e também mais tarde usarei uma função de extensão. To & lt; & gt; (), então também vou listá-la aqui. Lembre-se de que você pode usar qualquer analisador JSON, como JSON, essa é apenas a minha preferência.
Adicionando uma interface do usuário nos dados da cadeia de opções.
Então, isso cobre a obtenção dos dados. Se você quiser criar uma tabela de cadeias de opções com chamadas em um lado, avisos no meio e colocar & nbs;; por outro, é fácil o suficiente para usar o WPF e o código da API da opção do Google que publiquei no GitHub inclui apenas um exemplo.
Sim, eu sei que é digno de crédito, mas eu queria mostrar o conceito sem tornar o código mais difícil, adicionando mais funcionalidade ou estilo do que o necessário.
Para obter esse layout, criei uma nova classe chamada OptionPair. É usado apenas pela interface do usuário para exibir essas linhas. Cada linha é um objeto OptionPair, que é um put, call e strike.
Eu não usei MVVM para isso, mais uma vez eu queria mantê-lo simples, por isso é apenas uma única janela do WPF com algum código para trás. Aqui está a listagem completa de código para a janela:
A maior parte 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 vencimento mais recente dessa opção. As datas de expiração retornadas são colocadas em uma coleção para serem exibidas em uma caixa suspensa, para que o usuário possa escolher uma diferente. Os objetos OptionPair são criados e exibidos na grade. Se o usuário selecionar uma nova data de expiração, o método FetchData () será chamado, obtendo novos dados e preenchendo a grade.
Aqui está o XAML.
Nenhuma surpresa aqui apenas ligando os objetos. A única coisa digna de nota é o ExpirationConverter, que leva o formato de ano, mês e dia que o Google retorna e o altera para algo melhor para exibição:
Espero que você tenha gostado dessa olhada na útil e interessante API da cadeia de opções do Google. Lembre-se de que isso não é suportado pelo Google, então eu não sugeriria usá-lo em um aplicativo de nível de produção, mas é interessante brincar com ele.
Se você está procurando expandir isso para adicionar gregos como delta, gamma, vega etc. Eu tenho outro artigo que você pode querer dar uma olhada: Vanilla Option Math.

GOOGLEFINANCE.
Busca informações atualizadas ou históricas de títulos do Google Finance.
Uso de Amostra.
GOOGLEFINANCE ("GOOG", "price", DATE (2014,1,1), DATE (2014,12,31), "DAILY")
GOOGLEFINANCE (ticker, [attribute], [start_date], [end_date | num_days], [interval])
ticker - O símbolo do ticker para a segurança a considerar.
attribute - [OPCIONAL - "price" por padrão] - O atributo a buscar no ticker do Google Finance. Isso é necessário se uma data for especificada.
atributo é um dos seguintes para dados em tempo real:
"price" - Cotação de preços em tempo real, com atraso de até 20 minutos.
"priceopen" - O preço a partir do mercado aberto.
"alto" - o alto preço do dia atual.
"low" - o baixo preço do dia atual.
"volume" - volume de negociação do dia atual.
"marketcap" - A capitalização de mercado da ação.
"tradetime" - A hora da última negociação.
"datadelay" - Quanto tempo atrasou os dados em tempo real.
"volumeavg" - O volume médio diário negociado.
"pe" - A relação preço / lucro.
"eps" - O lucro por ação.
"high52" - o preço alto de 52 semanas.
"low52" - O preço baixo de 52 semanas.
"change" - A mudança de preço desde o fechamento do pregão anterior.
"beta" - o valor beta.
"changepct" - A variação percentual no preço desde o fechamento do pregão anterior.
"closeyest" - o preço de fechamento do dia anterior.
"ações" - O número de ações em circulação.
"moeda" - A moeda na qual a segurança é precificada. As moedas não têm janelas de negociação, portanto, aberto, baixo, alto e volume não retornará para esse argumento.
atributo é um dos seguintes para dados históricos:
"open" - O preço de abertura para a (s) data (s) especificada (s).
"fechar" - O preço de fechamento para a (s) data (s) especificada (s).
"alto" - O preço alto para a (s) data (s) especificada (s).
"low" - O preço baixo para a (s) data (s) especificada (s).
"volume" - O volume para a (s) data (s) especificada (s).
"all" - Todas as opções acima.
atributo é um dos seguintes para dados de fundos mútuos:
"closeyest" - o preço de fechamento do dia anterior.
"date" - A data em que o valor do ativo líquido foi reportado.
"returnytd" - O retorno acumulado no ano.
"netassets" - O patrimônio líquido.
"change" - A alteração no valor do ativo líquido mais recentemente reportado e o imediatamente anterior.
"changepct" - A variação percentual no valor patrimonial líquido.
"yieldpct" - O rendimento da distribuição, a soma das distribuições de rendimentos dos últimos 12 meses (dividendos em ações e pagamentos de juros de renda fixa) e ganhos de valor patrimonial líquido divididos pelo número do valor patrimonial líquido do mês anterior.
"returnday" - Retorno total em um dia.
"return1" - Retorno total de uma semana.
"return4" - Retorno total em quatro semanas.
"return13" - Retorno total de treze semanas.
"return52" - Retorno total de cinquenta e duas semanas (anual).
"return156" - retorno total de 156 semanas (3 anos).
"return260" - retorno total de 260 semanas (5 anos).
"incomedividend" - O valor da distribuição de caixa mais recente.
"incomedividenddate" - A data da mais recente distribuição em dinheiro.
"capitalgain" - O montante da distribuição de ganho de capital mais recente.
"morningstarrating" - A classificação "star" da Morningstar.
"expenseratio" - Índice de despesas do fundo.
start_date - [OPCIONAL] - A data de início ao buscar dados históricos.
Se start_date for especificado, mas end_date | num_days não for, apenas os dados do único dia serão retornados.
end_date | num_days - [OPTIONAL] - A data final ao buscar dados históricos ou o número de dias a partir de start_date para o qual retornar dados.
intervalo - [OPCIONAL] - A frequência dos dados retornados; ou "DIÁRIO" ou "SEMANAL".
intervalo pode alternativamente ser especificado como 1 ou 7. Outros valores numéricos não são permitidos.
Todos os parâmetros devem ser colocados entre aspas ou ser referências a células contendo texto, exceto quando intervalo é especificado como um número e quando end_date | num_days é especificado como um número de dias.
Os resultados em tempo real serão retornados como um valor em uma única célula. Os dados históricos, mesmo para um único dia, serão retornados como uma matriz expandida com cabeçalhos de coluna.
Alguns atributos podem não produzir resultados para todos os símbolos.
O GOOGLEFINANCE está disponível apenas em inglês e não suporta a maioria das trocas internacionais.
Dados históricos não podem ser baixados ou acessados ​​por meio da API do Google Sheets ou do Google Apps Script. Se você tentar fazer isso, verá um erro # N / A no lugar dos valores nas células correspondentes da sua planilha.
Cotações não são provenientes de todos os mercados e podem ser adiadas até 20 minutos. As informações são fornecidas "como estão" e apenas para fins informativos, não para fins de negociação ou aconselhamento.
Recupera informações de mercado do Google Finance.
Aqui está uma lista de atributos comuns.
Recupera informações históricas do mercado com base nas datas especificadas do Google Finance.
Aqui está uma lista de atributos comuns para fundos mútuos.
Cria um gráfico dentro de uma célula para exibir a tendência de troca de moeda durante os últimos 30 dias, usando os retornos de resultados de recuperação do GoogleFinance.

Financiamento de opções de ações
Há uma maneira pouco conhecida de obter informações da cadeia de opções do Google. Isso mostrará como isso é feito, além de demonstrar como usá-lo usando o C #. (Fácil o suficiente em qualquer idioma, uma vez que é baseado em REST, portanto, se você não é um desenvolvedor de C #, não deixe que isso o impeça.)
ESTA NÃO É UMA API OFICIAL. A GOOGLE NÃO APOIA ISTO PARA QUALQUER COISA, MAS OS SEUS PRÓPRIOS APLICAÇÕES INTERNAS E PODEM MUDAR A QUALQUER MOMENTO. USE ISSO A SEU PRÓPRIO RISCO.
Acessando a API do Google Stock Options 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 da AAPL.
Com uma modificação muito pequena, você pode obter os dados em um formato similar ao JSON. (não é exatamente JSON, vou cobrir isso abaixo)
A diferença entre o site e a API é a adição de uma string de consulta simples & # 8220; output = json & # 8221 ;.
Assim, o URL se torna: & google / finance / option_chain? Q = AAPL & output = json & # 8221;
Compreender a API da opção Google.
Chamando & # 8220; google / finance / option_chain? Q = AAPL & saída = json & # 8221; retornará vários dados:
A próxima data de expiração Uma lista de todas as datas de expiração disponíveis para o símbolo Uma lista de todos os puts 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á muito mais datas de expiração nas opções AAPL e mais chamadas, além de eu não mostrar as chamadas, mas acho que isso deve dar uma idéia da estrutura geral.
Isso só funciona para o último vencimento. Todas as opções retornadas serão apenas para essa expiração. Você pode selecionar uma expiração diferente com bastante facilidade:
Você notará a adição de três novas strings de consulta, que denotam o ano, mês e dia da expiração. Acho melhor chamar o URL anterior para obter a lista de datas de expiração válidas e usá-lo para obter todos os avisos de uma data de expiração específica.
Mas os resultados não são válidos JSON?
Infelizmente eles não são. Se você olhar o exemplo colado acima, você notará que o nome e o valor devem ser colocados 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 por meio de uma expressão regular para cercar os nomes e valores entre aspas antes de tentar criar um objeto fora do JSON.
Este é o lugar onde ele difere de um idioma para o próximo, mas para C # eu faço o seguinte:
Usando esta opção chain chain em seus programas.
Isso pressupõe que você está usando 4.5 ou superior. Ele funcionará com outras versões, mas você pode precisar remover o & # 8220; async / await & # 8221; lógica talvez o Thread. Run também.
Em C #, é simples consumir esta API e obter objetos funcionais a partir dela.
Primeiro, vamos começar com os arquivos de definição necessários para transformar esse quase-JSON em objetos:
Dica Pro: Se você está se perguntando se eu digitei tudo isso na resposta é não. O Visual Studio tem uma função pouco conhecida. Copie o JSON dessa chamada do google api e, em seguida, no Visual Studio, clique em Editar - & gt; Colar especial - & gt; Colar JSON como classes. E isso faz o trabalho para você! (Eu ajustei um pouco, mas deixei o VS fazer um mapeamento chato para você.)
Então, quando tivermos a estrutura básica de como armazenar essas chamadas, conforme descrito acima, precisamos obter os dados e corrigir esses problemas de JSON.
Neste nós criamos um WebClient para buscar os dados. Eu faço isso em um thread separado, não é necessário em todos os casos, mas se você vai ligar isso a uma interface do usuário isso impedirá que sua interface do usuário seja bloqueada enquanto isso está recebendo os dados.
Em seguida, ele chama uma das duas URLs mostradas anteriormente, todas dependendo se o dia da expiração, o mês e o ano foram passados.
O JSON é limpo e depois é convertido em um objeto.
Essa chamada para. FromJson & lt; & # 8230; & gt; () é uma função de extensão que escrevi e que estou usando. Ele está usando a análise JSON do assembly System. Runtime. Serialization.
Eu uso isso em todo o lugar na maioria dos meus projetos, e também mais tarde usarei uma função de extensão. To & lt; & gt; (), então também vou listá-la aqui. Lembre-se de que você pode usar qualquer analisador JSON, como JSON, essa é apenas a minha preferência.
Adicionando uma interface do usuário nos dados da cadeia de opções.
Então, isso cobre a obtenção dos dados. Se você quiser criar uma tabela de cadeias de opções com chamadas em um lado, avisos no meio e colocar & nbs;; por outro, é fácil o suficiente para usar o WPF e o código da API da opção do Google que publiquei no GitHub inclui apenas um exemplo.
Sim, eu sei que é digno de crédito, mas eu queria mostrar o conceito sem tornar o código mais difícil, adicionando mais funcionalidade ou estilo do que o necessário.
Para obter esse layout, criei uma nova classe chamada OptionPair. É usado apenas pela interface do usuário para exibir essas linhas. Cada linha é um objeto OptionPair, que é um put, call e strike.
Eu não usei MVVM para isso, mais uma vez eu queria mantê-lo simples, por isso é apenas uma única janela do WPF com algum código para trás. Aqui está a listagem completa de código para a janela:
A maior parte 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 vencimento mais recente dessa opção. As datas de expiração retornadas são colocadas em uma coleção para serem exibidas em uma caixa suspensa, para que o usuário possa escolher uma diferente. Os objetos OptionPair são criados e exibidos na grade. Se o usuário selecionar uma nova data de expiração, o método FetchData () será chamado, obtendo novos dados e preenchendo a grade.
Aqui está o XAML.
Nenhuma surpresa aqui apenas ligando os objetos. A única coisa digna de nota é o ExpirationConverter, que leva o formato de ano, mês e dia que o Google retorna e o altera para algo melhor para exibição:
Espero que você tenha gostado dessa olhada na útil e interessante API da cadeia de opções do Google. Lembre-se de que isso não é suportado pelo Google, então eu não sugeriria usá-lo em um aplicativo de nível de produção, mas é interessante brincar com ele.
Se você está procurando expandir isso para adicionar gregos como delta, gamma, vega etc. Eu tenho outro artigo que você pode querer dar uma olhada: Vanilla Option Math.

No comments:

Post a Comment