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."

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] [-m MIN-BID]
                   [-s {AGGRESSIVE,CONSERVATIVE,OVERALL_HIGHEST_RATE}]
                   [--target-loan-count TARGET-LOAN-COUNT] [--search-for-almost-funded] [-v]
                   [-d]

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.

options:
  -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.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

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

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.3.tar.gz (15.0 kB view details)

Uploaded Source

Built Distribution

prosper_bot-0.7.3-py3-none-any.whl (14.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: prosper_bot-0.7.3.tar.gz
  • Upload date:
  • Size: 15.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.6.1 CPython/3.12.4 Linux/6.5.0-1023-azure

File hashes

Hashes for prosper_bot-0.7.3.tar.gz
Algorithm Hash digest
SHA256 2417adeb5bb2ebf6874cb2d451c364196c3a76c7f67bd1b0d6db0c1d01619a79
MD5 21c9c568c3bf35d2058625ade1d5bcbd
BLAKE2b-256 93fb7ce03627d56ef85472af0e7859dd17aa42aaa9ad00d097b2ac6a026006c9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: prosper_bot-0.7.3-py3-none-any.whl
  • Upload date:
  • Size: 14.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.6.1 CPython/3.12.4 Linux/6.5.0-1023-azure

File hashes

Hashes for prosper_bot-0.7.3-py3-none-any.whl
Algorithm Hash digest
SHA256 31df216a5990216ce27633bf2459c0f5f0b18f652ce58d2770399d0f3a91c6a6
MD5 be9a097d5fc2694bba0e7a038ca8154a
BLAKE2b-256 adbf74ae631d92bc7e83047916f30e5041d4531a34e3aa26a7b06a7e7e306e28

See more details on using hashes here.

Supported by

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