https://github.com/jessecooper/pyetrade
Python E-Trade API Wrapper
https://github.com/jessecooper/pyetrade
api-client etrade market python stock
Last synced: 2 months ago
JSON representation
Python E-Trade API Wrapper
- Host: GitHub
- URL: https://github.com/jessecooper/pyetrade
- Owner: jessecooper
- License: gpl-3.0
- Created: 2017-06-14T18:44:16.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2025-03-20T14:44:02.000Z (about 1 year ago)
- Last Synced: 2025-05-15T12:05:02.448Z (about 1 year ago)
- Topics: api-client, etrade, market, python, stock
- Language: Python
- Size: 400 KB
- Stars: 226
- Watchers: 31
- Forks: 100
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
# pyetrade (Python E-Trade API Wrapper)
[](https://pypi.python.org/pypi/pyetrade)
[]()
[](https://pypi.python.org/pypi/pyetrade)
[](https://github.com/jessecooper/pyetrade/actions/workflows/build.yml/badge.svg?branch=master)
[](https://codecov.io/gh/jessecooper/pyetrade)
## Completed
* Authorization API (OAuth)
* get_request_token
* get_access_token
* renew_access_token
* revoke_access_token
* Alerts API
* list_alerts
* list_alert_details
* delete_alert
* Accounts API
* list_accounts
* get_account_balance
* get_account_portfolio
* get_portfolio_position_lot
* list_transactions
* list_transaction_details
* Order API
* list_orders
* list_order_details
* find_option_orders
* preview_equity_order
* change_preview_equity_order
* place_equity_order
* place_changed_equity_order
* place_option_order
* place_changed_option_order
* cancel_order
* Market API
* look_up_product
* get_quote
* get_option_chains
* get_option_expire_date
## Install
```bash
pip install pyetrade
```
OR
```bash
git clone https://github.com/jessecooper/pyetrade.git
cd pyetrade
sudo make init
sudo make install
```
## Example Usage
To create the OAuth tokens:
```python
import pyetrade
consumer_key = ""
consumer_secret = ""
oauth = pyetrade.ETradeOAuth(consumer_key, consumer_secret)
print(oauth.get_request_token()) # Use the printed URL
verifier_code = input("Enter verification code: ")
tokens = oauth.get_access_token(verifier_code)
print(tokens)
```
And then on the example code:
```python
import pyetrade
consumer_key = ""
consumer_secret = ""
tokens = {'oauth_token': '',
'oauth_token_secret': ''}
accounts = pyetrade.ETradeAccounts(
consumer_key,
consumer_secret,
tokens['oauth_token'],
tokens['oauth_token_secret']
)
print(accounts.list_accounts())
```
## Documentation
[PyEtrade Documentation](https://pyetrade.readthedocs.io/en/latest/)
## Contribute to pyetrade
[ETrade API Docs](https://apisb.etrade.com/docs/api/account/api-account-v1.html)
### Development Setup:
* Fork pyetrade
* Setup development environment
```bash
make init
make devel
```
OR
```bash
pip install -r requirements.txt
pip install -r requirements_dev.txt
pip install -e .
pre-commit install --hook-type pre-commit --hook-type pre-push --install-hooks -t post-checkout -t post-merge
```
* Lint (Run analysis - pre-commit-config)
```bash
make analysis
```
* Test (Coverage >= 90%)
```bash
make test
```
* Push Changes
* Push changes to a branch on your forked repo
* Create pull request
* Open a pull request on pyetrade and put your fork as the source of your changes