semvec/pypi-packages huggingface dataset:
validbot-shared 0.0.1
Placeholder — did you mean 'validibot-shared'? See https://github.com/danielmcquillen/validibot-shared
License: MIT
Requires Python: >=3.10
Keywords: placeholder, validation, validibot

# validbot-shared

**This is a name-reservation package.** Did you mean `validibot-shared`?

```bash
pip install validibot-shared
```

- **Source code:** https://github.com/danielmcquillen/validibot-shared
- **Documentation:** https://docs.validibot.com
- **Validibot platform:** https://github.com/danielmcquillen/validibot
valdibot-shared 0.0.1
Placeholder — did you mean 'validibot-shared'? See https://github.com/danielmcquillen/validibot-shared
License: MIT
Requires Python: >=3.10
Keywords: placeholder, validation, validibot

# valdibot-shared

**This is a name-reservation package.** Did you mean `validibot-shared`?

```bash
pip install validibot-shared
```

- **Source code:** https://github.com/danielmcquillen/validibot-shared
- **Documentation:** https://docs.validibot.com
- **Validibot platform:** https://github.com/danielmcquillen/validibot
validbot 0.0.1
Placeholder — did you mean 'validibot-cli'? See https://github.com/danielmcquillen/validibot
License: MIT
Requires Python: >=3.10
Keywords: placeholder, validation, validibot

# validbot

**This is a name-reservation package.** Did you mean `validibot`?

## Looking for Validibot?

- **Platform:** https://github.com/danielmcquillen/validibot
- **CLI:** `pip install validibot-cli`
- **Shared library:** `pip install validibot-shared`
- **Documentation:** https://docs.validibot.com
validibot-client 0.0.1
Placeholder — the Validibot CLI is 'validibot-cli'. See https://github.com/danielmcquillen/validibot-cli
License: MIT
Requires Python: >=3.10
Keywords: placeholder, validation, validibot

# validibot-client

**This is a name-reservation package.** You probably want `validibot-cli`.

## Looking for the Validibot CLI?

```bash
pip install validibot-cli
```

- **CLI source code:** https://github.com/danielmcquillen/validibot-cli
- **CLI documentation:** https://docs.validibot.com/cli
- **Validibot platform:** https://github.com/danielmcquillen/validibot
valdibot 0.0.1
Placeholder — did you mean 'validibot-cli'? See https://github.com/danielmcquillen/validibot
License: MIT
Requires Python: >=3.10
Keywords: placeholder, validation, validibot

# valdibot

**This is a name-reservation package.** Did you mean `validibot`?

## Looking for Validibot?

- **Platform:** https://github.com/danielmcquillen/validibot
- **CLI:** `pip install validibot-cli`
- **Shared library:** `pip install validibot-shared`
- **Documentation:** https://docs.validibot.com
sevent 0.4.43
lightweight event loop
License: MIT

# sevent
        
        The highest performance event loop.
        
        # Examples
        
         ### Simple Http Client
         
        ```python
        import sevent
        
        def on_data(s, data):
            print(data.decode("utf-8"))
        
        s = sevent.tcp.Socket()
        s.on_data(on_data)
        s.on_close(lambda s: sevent.current().stop())
        s.connect(('www.google.com', 80))
        s.write(b'GET / HTTP/1.1\r\nHost: www.google.com\r\nConnection: Close\r\nUser-Agent: curl/7.58.0\r\nAccept: */*\r\n\r\n')
        
        sevent.instance().start()
        ```
        
        ```python
        import sevent
        
        async def http_test():
            s = sevent.tcp.Socket()
            await s.connectof(('www.google.com', 80))
            await s.send(b'GET / HTTP/1.1\r\nHost: www.google.com\r\nConnection: Close\r\nUser-Agent: curl/7.58.0\r\nAccept: */*\r\n\r\n')
        
            data = b''
            while True:
                try:
                    data += (await s.recv()).read()
                except sevent.tcp.SocketClosed:
                    break
            print(data.decode("utf-8"))
            await s.closeof()
        
        sevent.run(http_test)
        ```
        
        ### Simple TCP Port Forward
        
        ```python
        import sys
        import sevent
        
        def on_connection(server, conn):
            pconn = sevent.tcp.Socket()
            pconn.connect((sys.argv[2], int(sys.argv[3])))
            conn.link(pconn)
        
        server = sevent.tcp.Server()
        server.on_connection(on_connection)
        server.listen(("0.0.0.0", int(sys.argv[1])))
        sevent.instance().start()
        ```
        
        ```python
        import sys
        import sevent
        
        async def tcp_port_forward_server():
            server = sevent.tcp.Server()
            server.listen(("0.0.0.0", int(sys.argv[1])))
        
            while True:
                conn = await server.accept()
                pconn = sevent.tcp.Socket()
                pconn.connect((sys.argv[2], int(sys.argv[3])))
                conn.link(pconn)
        
        sevent.run(tcp_port_forward_server)
        ```
        
        # License
        
        sevent uses the MIT license, see LICENSE file for the details.
panelbeater 0.2.58
A CLI for finding mispriced options.
License: MIT
Keywords: options

# panelbeater

<a href="https://pypi.org/project/panelbeater/">
    <img alt="PyPi" src="https://img.shields.io/pypi/v/panelbeater">
</a>

A CLI for finding mispriced options.

## Dependencies :globe_with_meridians:

Python 3.11.6:

- [yfinance](https://ranaroussi.github.io/yfinance/)
- [pandas](https://pandas.pydata.org/)
- [pandas-datareader](https://pandas-datareader.readthedocs.io/en/latest/)
- [numpy](https://numpy.org/)
- [feature-engine](https://feature-engine.trainindata.com/en/latest/)
- [requests-cache](https://requests-cache.readthedocs.io/en/stable/)
- [scikit-learn](https://scikit-learn.org/stable/)
- [wavetrainer](https://github.com/8W9aG/wavetrainer/)
- [tqdm](https://tqdm.github.io/)
- [pyvinecopulib](https://github.com/vinecopulib/pyvinecopulib)
- [python-dotenv](https://saurabh-kumar.com/python-dotenv/)
- [kaleido](https://github.com/plotly/kaleido)
- [plotly](https://plotly.com/)
- [scipy](https://scipy.org/)
- [joblib](https://joblib.readthedocs.io/en/stable/)

## Raison D'être :thought_balloon:

`panelbeater` trains models at t+X iteratively to come up with the calibrated expected distribution of an asset price in the future. It then finds the current prices of options for an asset, and determines whether it should be bought and for how much.

## Architecture :triangular_ruler:

`panelbeater` goes through the following steps:
1. Downloads the historical data.
2. Performs feature engineering on the data.
3. Trains the required models and copulas to operate on the data panel.
4. Downloads the current data.
5. Runs inference on t+X for the latest options to find the probability distribution on the asset prices to their expiry dates.
6. Finds any mispriced options and size the position accordingly.

## Installation :inbox_tray:

This is a python package hosted on pypi, so to install simply run the following command:

`pip install panelbeater`

or install using this local repository:

`python setup.py install --old-and-unmanageable`

## Usage example :eyes:

You can run `panelbeater` as a CLI like so:

```shell
panelbeater
```

This performs a full train, inference and attempts to find mispriced options.

## License :memo:

The project is available under the [MIT License](LICENSE).