voly 0.0.46__py3-none-any.whl → 0.0.48__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- voly/client.py +13 -1
 - voly/models.py +6 -6
 - {voly-0.0.46.dist-info → voly-0.0.48.dist-info}/METADATA +1 -1
 - {voly-0.0.46.dist-info → voly-0.0.48.dist-info}/RECORD +7 -7
 - {voly-0.0.46.dist-info → voly-0.0.48.dist-info}/LICENSE +0 -0
 - {voly-0.0.46.dist-info → voly-0.0.48.dist-info}/WHEEL +0 -0
 - {voly-0.0.46.dist-info → voly-0.0.48.dist-info}/top_level.txt +0 -0
 
    
        voly/client.py
    CHANGED
    
    | 
         @@ -84,9 +84,21 @@ class VolyClient: 
     | 
|
| 
       84 
84 
     | 
    
         
             
                        raise
         
     | 
| 
       85 
85 
     | 
    
         | 
| 
       86 
86 
     | 
    
         
             
                # -------------------------------------------------------------------------
         
     | 
| 
       87 
     | 
    
         
            -
                # Black-Scholes and Greeks Calculations
         
     | 
| 
      
 87 
     | 
    
         
            +
                # SVI, Black-Scholes and Greeks Calculations
         
     | 
| 
       88 
88 
     | 
    
         
             
                # -------------------------------------------------------------------------
         
     | 
| 
       89 
89 
     | 
    
         | 
| 
      
 90 
     | 
    
         
            +
                @staticmethod
         
     | 
| 
      
 91 
     | 
    
         
            +
                def svi(log_moneyness_array: float, a: float, b: float, sigma: float, rho: float, m: float) -> float:
         
     | 
| 
      
 92 
     | 
    
         
            +
                    return SVIModel.svi(log_moneyness_array, a, b, sigma, rho, m)
         
     | 
| 
      
 93 
     | 
    
         
            +
             
     | 
| 
      
 94 
     | 
    
         
            +
                @staticmethod
         
     | 
| 
      
 95 
     | 
    
         
            +
                def svi_d(log_moneyness_array: float, a: float, b: float, sigma: float, rho: float, m: float) -> float:
         
     | 
| 
      
 96 
     | 
    
         
            +
                    return SVIModel.svi_d(log_moneyness_array, a, b, sigma, rho, m)
         
     | 
| 
      
 97 
     | 
    
         
            +
             
     | 
| 
      
 98 
     | 
    
         
            +
                @staticmethod
         
     | 
| 
      
 99 
     | 
    
         
            +
                def svi_dd(log_moneyness_array: float, a: float, b: float, sigma: float, rho: float, m: float) -> float:
         
     | 
| 
      
 100 
     | 
    
         
            +
                    return SVIModel.svi_dd(log_moneyness_array, a, b, sigma, rho, m)
         
     | 
| 
      
 101 
     | 
    
         
            +
             
     | 
| 
       90 
102 
     | 
    
         
             
                @staticmethod
         
     | 
| 
       91 
103 
     | 
    
         
             
                def d1(s: float, k: float, r: float, vol: float, t: float,
         
     | 
| 
       92 
104 
     | 
    
         
             
                       option_type: str = 'call') -> float:
         
     | 
    
        voly/models.py
    CHANGED
    
    | 
         @@ -42,16 +42,16 @@ class SVIModel: 
     | 
|
| 
       42 
42 
     | 
    
         
             
                }
         
     | 
| 
       43 
43 
     | 
    
         | 
| 
       44 
44 
     | 
    
         
             
                @staticmethod
         
     | 
| 
       45 
     | 
    
         
            -
                def svi( 
     | 
| 
       46 
     | 
    
         
            -
                    return a + b * (rho * ( 
     | 
| 
      
 45 
     | 
    
         
            +
                def svi(log_moneyness_array: float, a: float, b: float, sigma: float, rho: float, m: float) -> float:
         
     | 
| 
      
 46 
     | 
    
         
            +
                    return a + b * (rho * (log_moneyness_array - m) + np.sqrt((log_moneyness_array - m) ** 2 + sigma ** 2))
         
     | 
| 
       47 
47 
     | 
    
         | 
| 
       48 
48 
     | 
    
         
             
                @staticmethod
         
     | 
| 
       49 
     | 
    
         
            -
                def svi_d( 
     | 
| 
       50 
     | 
    
         
            -
                    return b * (rho + (( 
     | 
| 
      
 49 
     | 
    
         
            +
                def svi_d(log_moneyness_array: float, a: float, b: float, sigma: float, rho: float, m: float) -> float:
         
     | 
| 
      
 50 
     | 
    
         
            +
                    return b * (rho + ((log_moneyness_array - m) / np.sqrt((log_moneyness_array - m) ** 2 + sigma ** 2)))
         
     | 
| 
       51 
51 
     | 
    
         | 
| 
       52 
52 
     | 
    
         
             
                @staticmethod
         
     | 
| 
       53 
     | 
    
         
            -
                def svi_dd( 
     | 
| 
       54 
     | 
    
         
            -
                    return b *  
     | 
| 
      
 53 
     | 
    
         
            +
                def svi_dd(log_moneyness_array: float, a: float, b: float, sigma: float, rho: float, m: float) -> float:
         
     | 
| 
      
 54 
     | 
    
         
            +
                    return b * log_moneyness_array ** 2 / ((log_moneyness_array - m) ** 2 + sigma ** 2) ** 1.5
         
     | 
| 
       55 
55 
     | 
    
         | 
| 
       56 
56 
     | 
    
         
             
                @staticmethod
         
     | 
| 
       57 
57 
     | 
    
         
             
                def svi_min_strike(sigma: float, rho: float, m: float) -> float:
         
     | 
| 
         @@ -1,8 +1,8 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            voly/__init__.py,sha256=8xyDk7rFCn_MOD5hxuv5cxxKZvBVRiSIM7TgaMPpwpw,211
         
     | 
| 
       2 
     | 
    
         
            -
            voly/client.py,sha256= 
     | 
| 
      
 2 
     | 
    
         
            +
            voly/client.py,sha256=qkNC9CAuO6XRW9NYFNVJCead04Nntly7acU4O7TDO1o,20135
         
     | 
| 
       3 
3 
     | 
    
         
             
            voly/exceptions.py,sha256=PBsbn1vNMvKcCJwwJ4lBO6glD85jo1h2qiEmD7ArAjs,92
         
     | 
| 
       4 
4 
     | 
    
         
             
            voly/formulas.py,sha256=XA8E19pKQtMWNUB6qB04laifsok9E0Wt7HVq4wNM6QE,8539
         
     | 
| 
       5 
     | 
    
         
            -
            voly/models.py,sha256= 
     | 
| 
      
 5 
     | 
    
         
            +
            voly/models.py,sha256=V2VI9yK-JyfKtI4nT5i42LQSwyGvexiymNiC2V1mQn4,3659
         
     | 
| 
       6 
6 
     | 
    
         
             
            voly/core/__init__.py,sha256=bu6fS2I1Pj9fPPnl-zY3L7NqrZSY5Zy6NY2uMUvdhKs,183
         
     | 
| 
       7 
7 
     | 
    
         
             
            voly/core/charts.py,sha256=T8cogkiHj8NcFxfARumNvAjLJUAxsMlHUOVgshwjye8,26474
         
     | 
| 
       8 
8 
     | 
    
         
             
            voly/core/data.py,sha256=Dfk-ByHpdteUiLXr0p-wRLr3VAmdyjdDBKwjwdTgCjA,9939
         
     | 
| 
         @@ -11,8 +11,8 @@ voly/core/interpolate.py,sha256=ztVIePJZOh-CIbn69wkh1JW2rKywNe2FEewRN0zcSAo,8185 
     | 
|
| 
       11 
11 
     | 
    
         
             
            voly/core/rnd.py,sha256=8FTU-Qp9epW9yE4XSOdiFGIRXrGyXqF6mVgZn1NMvxk,11813
         
     | 
| 
       12 
12 
     | 
    
         
             
            voly/utils/__init__.py,sha256=E05mWatyC-PDOsCxQV1p5Xi1IgpOomxrNURyCx_gB-w,200
         
     | 
| 
       13 
13 
     | 
    
         
             
            voly/utils/logger.py,sha256=4-_2bVJmq17Q0d7Rd2mPg1AeR8gxv6EPvcmBDMFWcSM,1744
         
     | 
| 
       14 
     | 
    
         
            -
            voly-0.0. 
     | 
| 
       15 
     | 
    
         
            -
            voly-0.0. 
     | 
| 
       16 
     | 
    
         
            -
            voly-0.0. 
     | 
| 
       17 
     | 
    
         
            -
            voly-0.0. 
     | 
| 
       18 
     | 
    
         
            -
            voly-0.0. 
     | 
| 
      
 14 
     | 
    
         
            +
            voly-0.0.48.dist-info/LICENSE,sha256=wcHIVbE12jfcBOai_wqBKY6xvNQU5E909xL1zZNq_2Q,1065
         
     | 
| 
      
 15 
     | 
    
         
            +
            voly-0.0.48.dist-info/METADATA,sha256=wh8I_veTd38_APRaWlz82K0g257Ax2HQfNZjprlEIIw,4092
         
     | 
| 
      
 16 
     | 
    
         
            +
            voly-0.0.48.dist-info/WHEEL,sha256=52BFRY2Up02UkjOa29eZOS2VxUrpPORXg1pkohGGUS8,91
         
     | 
| 
      
 17 
     | 
    
         
            +
            voly-0.0.48.dist-info/top_level.txt,sha256=ZfLw2sSxF-LrKAkgGjOmeTcw6_gD-30zvtdEY5W4B7c,5
         
     | 
| 
      
 18 
     | 
    
         
            +
            voly-0.0.48.dist-info/RECORD,,
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     | 
| 
         
            File without changes
         
     |