Skip to main content

library T-28h

Project description

American Options Library

The Library that is using various methods to price the variety of options of american type.

Installation


pip install american_options

Get started

How to obtain option price with this library:

from american_options import Option, Underlying



#Set up your parameters

n_sims = 10000   

T = 1

sigma1 = 0.4

sigma2 = 0.8

r = 0.06

N = 255

spot1 = 100

spot2 = 120

K1 = 100

K2 = 110

First you need to create assets you want to write options on. You can do this in following way:

# Instantiate an Underlying object

asset1 = Underlying(spot_price=100, r=0.07)

asset2 = Underlying(spot_price=120, r=0.07)

Next step is to calibrate assets for the use of different models.

# Calibrate created assets

asset1.calibrate_GBM(sigma=0.4, values_per_year_GBM=N)

asset1.calibrate_JD(sigma=0.4, jump_intensity=1/3)

asset2.calibrate_GBM(sigma=0.4, values_per_year_GBM=N)

asset2.calibrate_JD(sigma=0.2, jump_intensity=1/2)

Now create options, for that we need payoff functions as well. You can import some of them from payoffs module:

from american_options.payoffs import *



option1 = Option(underlyings=asset1, payoff_func=lambda trajectory: payoff_creator_1d(trajectory, Call_Payoff, K=100, barrier=True, barrier_level=140), T=1)

option2 = Option(underlyings=(asset1, asset2), payoff_func=lambda trajectories: double_max_put(trajectories, 100), T=1)

And finally obtaining a price!

# Pricing with state space partitioning method

option1.ssp(n_sims=10000, mode='JD')

option2.ssp(n_sims=10000, mode='GBM')



# pPricing with Longstaff-Schwartz method

option1.LS(n_sims=10000, mode='JD')

option2.ssp(n_sims=10000, mode='GBM')

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

american_options-0.1.2.tar.gz (15.9 kB view details)

Uploaded Source

Built Distribution

american_options-0.1.2-py3-none-any.whl (17.7 kB view details)

Uploaded Python 3

File details

Details for the file american_options-0.1.2.tar.gz.

File metadata

  • Download URL: american_options-0.1.2.tar.gz
  • Upload date:
  • Size: 15.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.7.4

File hashes

Hashes for american_options-0.1.2.tar.gz
Algorithm Hash digest
SHA256 f90e2b7d72e40f4bf10546e65f70df26c0398ab9ef4d0ffce28f9b84110e3e8f
MD5 d9c88e5c6839d1e251e0ae035cb202e5
BLAKE2b-256 68782dddd8b54afad92d6393704c256f6fbafe94523702e6f7aab26625fdf5c5

See more details on using hashes here.

File details

Details for the file american_options-0.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for american_options-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 d461d1955d7e3fa2486689d1d9eed1cf8ac6d671e4ae9780a82fe2bc78ee7c98
MD5 082bb62aefd4a175cdbc62095b740518
BLAKE2b-256 70e752dbada87df0032216d6f2909a1f134ae81c969726b68ebf49a2ca1feade

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page