Metadata-Version: 2.1
Name: nanobt
Version: 0.1.1
Summary: A quickly backtesting library for inversion strategies
Home-page: https://github.com/mgarcia0094/nanobt
Author: Miguel Ángel García Gandía
Author-email: mgarcia0094@gmail.com
License: UNKNOWN
Description: # Package nanobt (v 0.1.0)
        
        A quickly backtesting library for inversion strategies
        
        ## Install package
        
        ```
        pip install nanobt
        ```
        
        # Data as pd.DataFrame
        
        Columns required = ['datetime', 'open', 'high', 'low', 'close', 'volume']
        
        Column 'datetime' must be datetime object.
        
        # Code example
        
        
        ```python
        
        from nanobt.backtesting import Backtesting
        from nanobt.trades import TradeHistory, SideOrder
        import pandas as pd
        
        INIT_PORTFOLIO = 1000
        class BuyAndHoldStrategy(Backtesting):
            def next(self):
                if not self.position:
                    self.entry(SideOrder.BUY)
        
        data = pd.read_csv('./data/binance_BTCUSDT_5m.csv')
        data['datetime'] = pd.to_datetime(data['time'], unit='s')
        data = data.drop(columns=['time'])
        
        strategy = BuyAndHoldStrategy()
        strategy.setdata(data)
        trades = strategy.run()
        
        th = TradeHistory(trades=trades)
        print("Init Portfolio: ", INIT_PORTFOLIO)
        print("Buy and Hold Strategy: ", th.study(cash=INIT_PORTFOLIO, sizer=1, commision=0.04, show_plot=False))
        
        
        ```
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.6
Description-Content-Type: text/markdown
