Metadata-Version: 2.4
Name: sopel-stocks
Version: 2.0.2
Summary: Stock lookup plugin for Sopel IRC bots
Author-email: Rusty Bower <rusty@rustybower.com>
License-Expression: MIT
Project-URL: Homepage, https://github.com/sopel-irc/sopel-stocks
Project-URL: Bug Tracker, https://github.com/sopel-irc/sopel-stocks/issues
Keywords: sopel,plugin,bot,irc
Platform: Linux x86, x86-64
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: System Administrators
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Communications :: Chat :: Internet Relay Chat
Requires-Python: <4,>=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: sopel>=8.0
Requires-Dist: requests
Dynamic: license-file

# sopel-stocks

A stock lookup plugin for Sopel IRC bots

[![Python Tests](https://github.com/sopel-irc/sopel-stocks/actions/workflows/python-tests.yml/badge.svg?branch=master)](https://github.com/sopel-irc/sopel-stocks/actions/workflows/python-tests.yml)
[![PyPI version](https://badge.fury.io/py/sopel-stocks.svg)](https://badge.fury.io/py/sopel-stocks)

**Maintainer:** [@RustyBower](https://github.com/rustybower)


## Installing

Releases are hosted on PyPI, so after installing Sopel, all you need is `pip`:

```shell
$ pip install sopel-stocks
```

### Requirements

This release of `sopel-stocks` requires Python 3.8+ and Sopel 8.0 or higher.

You will need an API key from one of the following providers:

* [Alpha Vantage](https://www.alphavantage.co/support/#api-key)
* [Finnhub](https://finnhub.io/dashboard) (recommended)
* [IEX Cloud](https://iexcloud.io/console/tokens)


### Configuring

The easiest way to configure `sopel-stocks` is via Sopel's
configuration wizard—simply run `sopel-plugins configure stocks`
and enter the values for which it prompts you.

However, if you want or need to configure this plugin manually, you will need to
define the following in `~/.sopel/default.cfg`

    [stocks]
    api_key = API_KEY
    provider = finnhub (or alphavantage/iexcloud)


## Usage

    .stock msft
    <sopel> MSFT $123.37 1.6 (1.31%)⬆

    .stock aapl amzn goog
    <sopel> AAPL $150.83 -2.51 (-1.64%)⬇
    <sopel> AMZN $97.06 -5.38 (-5.25%)⬇
    <sopel> GOOG $90.445 -4.215 (-4.45%)⬇

## Changelog

### 1.3.0

First release as `sopel-stocks`, replacing `sopel_modules.stocks`.


### 1.2.3

Added:
* Finnhub data provider

Fixed:
* Alpha Vantage API endpoint (yet again)


### 1.2.2

Changed:
* Further Alpha Vantage API updates


### 1.2.1

Fixed:
* Move away from premium Alpha Vantage endpoint

Meta:
* More packaging workflow updates


### 1.2.0

Added:
* Help message for `.stock` command
* Multi-symbol lookup

Meta:
* Project moved to Sopel's GitHub org, and docs/workflows updated


### 1.1.3

Fixed:
* Bug with newly IPO'd stocks


### 1.1.2

Fixed:
* Handling input of foreign ticker symbols

Meta:
* Additional installation documentation


### 1.1.1

Fixed:
* Presentation bug when using IEX Cloud data

Meta:
* Fixed packaging workflow


### 1.1.0

Added:
* IEX Cloud data provider
* New configuration to select data provider


### 1.0.4

Improved documentation and error handling


### 1.0.3

Fixed handling stocks with no prior history, i.e. new symbols


### 1.0.2

Fixed:
* Formatting for penny stocks

Meta:
* Additional packaging tweaks


### 1.0.1

Style/packaging fixes (no corresponding release)


### 1.0.0

Initial release of `sopel_modules.stocks` module, using Alpha Vantage for data.
