Skip to main content

Trading bot for Prosper.com

Project description

prosper-bot

Bot to automatically invest in prosper.com

GitHub Workflow Status (with event) PyPI - Version PyPI - Python Version PyPI - License Code Climate coverage Code Climate maintainability OpenSSF Best Practices GitHub commit activity (branch) GitHub issues

Installation

Use pipx to install in a self-contained virtual environment.

pipx install prosper-bot

Setup

Follow the setup instructions for Prosper API

Running

Dry run

prosper-bot --dry-run

For realsies

prosper-bot

Options

Prosper bot exposes all the config options from prosper-api, plus the options in the bot and cli sections below.

["prosper-api.credentials.client-id"]
type = "str"
optional = false
constraint = "^[a-f0-9]{32}$"
description = "The client-id from Prosper."

["prosper-api.credentials.client-secret"]
type = "str"
optional = true
constraint = "^[a-f0-9]{32}$"
description = "The client-secret from Prosper; can be stored and accessed securely using the keyring library."

["prosper-api.credentials.username"]
type = "str"
optional = false
description = "Your Prosper username"

["prosper-api.credentials.password"]
type = "str"
optional = true
description = "Your Prosper password; can be stored and accessed securely using the keyring library."

["prosper-api.auth.token-cache"]
type = "str"
optional = false
default = "/Users/graham/Library/Caches/prosper-api/token-cache"
description = "The filesystem location where the auth token will be cached."

["prosper-bot.cli.verbose"]
type = "bool"
optional = false
description = "Prints additional debug messages."

["prosper-bot.cli.dry-run"]
type = "bool"
optional = false
description = "Run the loop but don't actually place any orders."

["prosper-bot.cli.single-run"]
type = "bool"
optional = false
description = "Runs the loop only once, or until cash is exhausted"

All configs can be provided as command-line options as well:

usage: prosper-bot [-h] [-c CLIENT-ID] [--client-secret CLIENT-SECRET] [-u USERNAME]
                   [-p PASSWORD] [-t TOKEN-CACHE] [-i IRR-START-DATE] [-m MIN-BID]
                   [-s {AGGRESSIVE,CONSERVATIVE,OVERALL_HIGHEST_RATE}]
                   [--target-loan-count TARGET-LOAN-COUNT] [--search-for-almost-funded] [-a]
                   [-v] [-d] [--single-run]

All optional program arguments can be provided via configuration file at the following
locations: '/Users/graham/Library/Application Support/prosper-
bot/config.{json|yml|yaml|toml}','/Users/graham/Programming/prosper-bot/prosper-
bot.{json|yml|yaml|toml}',/Users/graham/Programming/prosper-bot/.pyproject.toml.

optional arguments:
  -h, --help            show this help message and exit

prosper-api.credentials:
  -c CLIENT-ID, --client-id CLIENT-ID
                        The client-id from Prosper; Type: str matching /^[a-f0-9]{32}$/
  --client-secret CLIENT-SECRET
                        The client-secret from Prosper; can be stored and accessed securely
                        using the keyring library; Type: str matching /^[a-f0-9]{32}$/
  -u USERNAME, --username USERNAME
                        Your Prosper username; Type: str
  -p PASSWORD, --password PASSWORD
                        Your Prosper password; can be stored and accessed securely using the
                        keyring library; Type: str

prosper-api.auth:
  -t TOKEN-CACHE, --token-cache TOKEN-CACHE
                        The filesystem location where the auth token will be cached; Type:
                        str; Default: /Users/graham/Library/Caches/prosper-api/token-cache

prosper-bot.analytics:
  -i IRR-START-DATE, --irr-start-date IRR-START-DATE
                        Start date for IRR calculation; Type: str

prosper-bot.bot:
  -m MIN-BID, --min-bid MIN-BID
                        Minimum amount of a loan to purchase; Type: Decimal; Default: 25.00
  -s {AGGRESSIVE,CONSERVATIVE,OVERALL_HIGHEST_RATE}, --strategy {AGGRESSIVE,CONSERVATIVE,OVERALL_HIGHEST_RATE}
                        Strategy for balancing your portfolio; Type: str; Default:
                        AGGRESSIVE
  --target-loan-count TARGET-LOAN-COUNT
                        Calculate min bid based on (total account value / target loan
                        count). Overrides min-bid if present; Type: int
  --search-for-almost-funded
                        Search for listings with remaining funding <= cash, which allows
                        bidding when cash is less than $25; Type: bool
  -a, --analytics       Run analytics on the account; Type: bool

prosper-bot.cli:
  -v, --verbose         Prints additional debug messages; Type: bool
  -d, --dry-run         Run the loop but don't actually place any orders; Type: bool
  --single-run          Runs the loop only once, or until cash is exhausted; Type: bool

Feedback

This project uses GitHub issues for feature requests and bug reports.

Contributing

This project uses Poetry to manage dependencies and building. Follow the instructions to install it. Then use poetry install --all-extras to install the project dependencies. Then run poetry run autohooks activate to set up the pre-commit hooks. Please ensure the hooks pass before submitting a pull request.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

prosper_bot-0.7.7.tar.gz (16.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

prosper_bot-0.7.7-py3-none-any.whl (16.7 kB view details)

Uploaded Python 3

File details

Details for the file prosper_bot-0.7.7.tar.gz.

File metadata

  • Download URL: prosper_bot-0.7.7.tar.gz
  • Upload date:
  • Size: 16.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.6.1 CPython/3.12.9 Linux/6.8.0-1021-azure

File hashes

Hashes for prosper_bot-0.7.7.tar.gz
Algorithm Hash digest
SHA256 35f8d6c1e2f02dceec66f6dffa67dbf8ab516fc47b25684eb74505aa07f27835
MD5 8391b825cc8fa67dd381c66056842152
BLAKE2b-256 171a57ad855ece3c5631c099e3325cb2d420c91a358aea093f7bcf3ba85f3b55

See more details on using hashes here.

File details

Details for the file prosper_bot-0.7.7-py3-none-any.whl.

File metadata

  • Download URL: prosper_bot-0.7.7-py3-none-any.whl
  • Upload date:
  • Size: 16.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.6.1 CPython/3.12.9 Linux/6.8.0-1021-azure

File hashes

Hashes for prosper_bot-0.7.7-py3-none-any.whl
Algorithm Hash digest
SHA256 e3d3a3b08147839c38713df0c536d9ff9cbfc6ce369fc9695c2122174199af89
MD5 844798f7fdbf7fc3c22303f394e09005
BLAKE2b-256 c4d2b7140fafd4fd808e74c3d695deab170ad7c2a6e13c16a7f9a1aab86a225e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page