Gregas e Black and Scholes

Alexsander Talles
38

Gostaria de saber se tem como usar gregas e black and scholes no MT5?

 

Obrigado 

Rodrigo Malacarne
Moderador
8006
talles_:

Gostaria de saber se tem como usar gregas e black and scholes no MT5?

 

Obrigado 

Olá talles_,

não acredito que tenha nada pronto nesse sentido pronto no MetaTrader.

Entretanto, se você procurar na internet, você pode encontrar algumas boas fontes que implementam as gregas, assim como o modelo de Black & Scholes para C++. Acredito que não seja difícil de replicar a lógica para o terminal MetaTrader.

Como sugestões de link você pode consultar aqui, aqui e aqui.

Abraços,
Malacarne 

Alexsander Talles
38
Malacarne:

Olá talles_,

não acredito que tenha nada pronto nesse sentido pronto no MetaTrader.

Entretanto, se você procurar na internet, você pode encontrar algumas boas fontes que implementam as gregas, assim como o modelo de Black & Scholes para C++. Acredito que não seja difícil de replicar a lógica para o terminal MetaTrader.

Como sugestões de link você pode consultar aqui, aqui e aqui.

Abraços,
Malacarne 

Ola Marlacarne,

 Agradeço sua atenção vou procurar então o ato de vc me passar a linguagem, ja ajuda muito 

bremora10
32
bremora10  

Se eu me lembro a Black and Scholes é uma equação diferencial. Existem bibliotecas no próprio mql5  para esse tipo de resolução, ainda que eu não saiba para para esse tipo de função em si. Mas de uma olhada na biblioteca.

Caso não se trata da resolução em si, mas apenas da substituição das variáveis - conforme você disse sobre as gregas -, imagino que seja de fácil resolução, igual dito pelo malacarne.

Nesse site encontram-se códigos para a B&S em várias linguagens, de uma olhada:

http://www.espenhaug.com/black_scholes.html

Espen Haug
  • www.espenhaug.com
If you remove most risk by hedging options with options, get immune for blow up risk by the way you construct your option portfolio then you are using the traders formula/method that was discovered before Black-Scholes-Merton by a series of traders and researchers, the first contribution form Bachelier 1900 and the last by Thorp 1969, so this...
Carlos Camargo
18
Carlos Camargo  
Alexsander Talles:

Gostaria de saber se tem como usar gregas e black and scholes no MT5?

 

Obrigado 

A plataforma do Metatrader 5 prevê quadros e funções (MQL5) para retornar o valor das gregas, providos pelo servidor:

- v. Planilha de Opções (Options Board), e

- v. Função SimbolInfoDouble(), o ENUM_SYMBOL_INFO_DOUBLE ;

No entanto, a plataforma da XP não implementa esses serviços, testei e retorna 0 (zero) para todas As Gregas.

Planilha de opções - Operações comerciais - Ajuda para a MetaTrader 5
Planilha de opções - Operações comerciais - Ajuda para a MetaTrader 5
  • www.metatrader5.com
A opção é um instrumento financeiro derivativo. Trata-se de um contrato em que o titular da opção (o comprador) obtém o direito, mas não a obrigação, de comprar ou vender o ativo a um preço previamente estabelecido ('strike price') em algum momento no futuro. O lançador da opção (o vendedor), por sua vez, é obrigado a vender ou resgatar o ativo...
Altamir Rocha
61
Altamir Rocha  

Olá, Carlos Camargo.

Você testou implementar a Planilha de Opções em plataformas de outras corretoras? estou com um caso parecido...

Carlos Camargo
18
Carlos Camargo  
Altamir Rocha:

Olá, Carlos Camargo.

Você testou implementar a Planilha de Opções em plataformas de outras corretoras? estou com um caso parecido...

Olá, @Altamir Rocha,

Só testei na XP, mas sugiro você testar na sua corretora, tomara eles calculem (se calcular, por favor, informe a sua corretora):

void OnStart()
  {
//---
//--- Verifica se a corretora calcula as gregas no servidor
   string comm;
   
   comm = StringFormat("Ativo: %s\n", Symbol());
   comm += StringFormat("Volatilidade  = %d \n", SymbolInfoDouble(Symbol(),SYMBOL_PRICE_VOLATILITY) );
   comm += StringFormat("Preço Teórico = %d \n", SymbolInfoDouble(Symbol(),SYMBOL_PRICE_THEORETICAL) );
   comm += StringFormat("Delta         = %d \n", SymbolInfoDouble(Symbol(),SYMBOL_PRICE_DELTA) );
   comm += StringFormat("Theta         = %d \n", SymbolInfoDouble(Symbol(),SYMBOL_PRICE_THETA) );
   comm += StringFormat("Gamma         = %d \n", SymbolInfoDouble(Symbol(),SYMBOL_PRICE_GAMMA) );
   comm += StringFormat("Vega          = %d \n", SymbolInfoDouble(Symbol(),SYMBOL_PRICE_VEGA) );
   comm += StringFormat("Rho           = %d \n", SymbolInfoDouble(Symbol(),SYMBOL_PRICE_RHO) );
   comm += StringFormat("Omega         = %d \n", SymbolInfoDouble(Symbol(),SYMBOL_PRICE_OMEGA) );
   comm += StringFormat("Sensitividade = %d \n", SymbolInfoDouble(Symbol(),SYMBOL_PRICE_SENSITIVITY) );
 
   Comment(comm);

  }
//+------------------------------------------------------------------+