Skip to content

jessecooper/pyetrade

Folders and files

NameName
Last commit message
Last commit date

Latest commit

3e64b20 · Mar 20, 2025
Nov 7, 2024
Feb 5, 2025
Feb 27, 2025
Apr 9, 2024
Nov 6, 2024
Apr 22, 2024
Apr 22, 2024
Apr 22, 2024
Apr 8, 2024
Oct 6, 2018
Apr 22, 2024
Apr 18, 2024
Nov 6, 2024
Nov 6, 2024
Nov 6, 2024
Mar 6, 2025
Nov 6, 2024
Apr 18, 2024

Repository files navigation

pyetrade (Python E-Trade API Wrapper)

PyPI PyPI PyPI Build Status codecov

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

pip install pyetrade

OR

git clone https://github.com/jessecooper/pyetrade.git
cd pyetrade
sudo make init
sudo make install

Example Usage

To create the OAuth tokens:

import pyetrade

consumer_key = "<CONSUMER_KEY>"
consumer_secret = "<SECRET_KEY>"

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:

import pyetrade

consumer_key = "<CONSUMER_KEY>"
consumer_secret = "<SECRET_KEY>"
tokens = {'oauth_token': '<TOKEN FROM THE SCRIPT ABOVE>',
          'oauth_token_secret': '<TOKEN FROM THE SCRIPT ABOVE>'}

accounts = pyetrade.ETradeAccounts(
    consumer_key,
    consumer_secret,
    tokens['oauth_token'],
    tokens['oauth_token_secret']
)

print(accounts.list_accounts())

Documentation

PyEtrade Documentation

Contribute to pyetrade

ETrade API Docs

Development Setup:

  • Fork pyetrade
  • Setup development environment
make init
make devel

OR

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)
make analysis
  • Test (Coverage >= 90%)
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