# -*- coding: utf-8 -*-
"""
Created on Wed Sep 16 21:17:34 2015

@author: ka
"""

class Options:
    
    def __init__(self, optionType, callOrPut, premium, strike, volatility, expiryDays, riskfreeRate, 
                 code='Options', entityType='Options',
                 value = 0., delta = 0., gamma = 0., vega = 0., theta = 0., rho = 0.,
                 buyOrSell = '', quantity = 0):
        self.code = code
        self.entityType = 'Options'
        
        self.optionType = optionType
        self.callOrPut = callOrPut
        self.premium = premium
        self.strike = strike
        self.volatility = volatility
        self.expiryDays = expiryDays
        self.riskfreeRate = riskfreeRate

        self.value = value
        self.delta = delta
        self.gamma = gamma
        self.vega = vega
        self.theta = theta
        self.rho = rho
        
        self.buyOrSell = buyOrSell
        self.quantity = quantity
        
    def serialize(self):
        return {
                "code": self.code,
                "entityType": self.entityType,
                "optionType": self.optionType,
                "callOrPut": self.callOrPut,
                "premium": self.premium,
                "strike": self.strike,
                "volatility": self.volatility,
                "expiryDays": self.expiryDays,
                "riskfreeRate": self.riskfreeRate,
                "value": self.value,
                "delta": self.delta,
                "gamma": self.gamma,
                "vega": self.vega,
                "theta": self.theta,
                "rho": self.rho,
                "buyOrSell": self.buyOrSell,
                "quantity": self.quantity,
                }