Skip to main content

No project description provided

Project description

alt text

  • Stylized name, shortened spelling of stepping stone;
  • A Python framework for ingesting and interpreting structured and unstructured financial data, designed to optimize quantitative methods in financial markets.

Key Features

  • Data Extraction: Retrieve market data from various sources such as B3, CVM, and BACEN (Olinda);
  • Quantitative Methods: Supports a range of quantitative techniques, including portfolio optimization, risk management, and financial modeling;
  • Derivatives Pricing: Implements both closed-form solutions (e.g., Black-Scholes model) and open-form, iterative methods (e.g., Binomial Tree model) for pricing derivatives;
  • Data Treatment: Tools for cleaning, structuring, and transforming raw financial data into usable formats for analysis;
  • Data Loading: Seamlessly integrates with databases such as PostgreSQL, MySQL, and SQLite.

Project Structure

stpstone
├── airflow
│   └── plugins.py
├── cals
│   ├── br_bzdays.py
│   ├── handling_dates.py
│   └── usa_bzdays.py
├── charts
│   ├── general_funcs.py
│   ├── prob_and_stats.py
│   ├── risk_management.py
│   ├── stock_market.py
│   └── tsir.py
├── cloud_clients
│   └── aws_s3.py
├── document_numbers
│   └── br.py
├── dsa
│   └── trees
│       └── b_tree.py
├── equity_consolidation
│   └── banks.py
├── finance
│   ├── anbima
│   │   ├── abimadata_api.py
│   │   ├── anbima_mtm.py
│   │   ├── anbima_stats.py
│   │   └── anbimadev.py
│   ├── auditing
│   │   └── earnings_manipulation.py
│   ├── b3
│   │   ├── cei.py
│   │   ├── core.py
│   │   ├── inoa.py
│   │   ├── line.py
│   │   ├── margin_simulator.py
│   │   ├── market_data.py
│   │   ├── search_by_trading.py
│   │   └── up2data_web.py
│   ├── comdinheiro
│   │   └── api_request.py
│   ├── cvm
│   │   ├── cvm_data.py
│   │   └── cvm_web.py
│   ├── dadosdemercado_site
│   │   └── api_request.py
│   ├── debentures
│   │   └── pricing.py
│   ├── derivatives
│   │   ├── forward.py
│   │   ├── futures.py
│   │   └── options
│   │       ├── american.py
│   │       └── european.py
│   ├── financial_risk
│   │   ├── capital_risk.py
│   │   ├── liquidity_risk.py
│   │   ├── market_risk.py
│   │   └── yield_risk.py
│   ├── macroeconomics
│   │   ├── br_macro.py
│   │   ├── global_rates.py
│   │   ├── usa_macro.py
│   │   └── world_gov_bonds.py
│   ├── performance_apprraisal
│   │   ├── company_return.py
│   │   └── financial_math.py
│   ├── reuters
│   │   └── api_request.py
│   ├── spot
│   │   └── stocks.py
│   └── tesouro_direto
│       ├── calculadora.py
│       └── consulta_dados.py
├── geography
│   └── br.py
├── handling_data
│   ├── dicts.py
│   ├── folders.py
│   ├── html.py
│   ├── img.py
│   ├── json.py
│   ├── lists.py
│   ├── lxml.py
│   ├── numbers.py
│   ├── object.py
│   ├── pd.py
│   ├── pdf.py
│   ├── pickle.py
│   ├── str.py
│   ├── tgz.py
│   ├── txt.py
│   └── xml.py
├── llms
│   └── gpt.py
├── loggs
│   ├── create_logs.py
│   └── db_logs.py
├── meta
│   └── validate_pm.py
├── microsoft_apps
│   ├── cmd.py
│   ├── excel.py
│   ├── onedrive.py
│   ├── outlook.py
│   └── windows_os.py
├── multithreading
│   └── mp_helper.py
├── opening_config
│   └── setup.py
├── pool_conn
│   ├── dabricksCLI.py
│   ├── databricks.py
│   ├── generic.py
│   ├── mongodb.py
│   ├── mysql.py
│   ├── postgresql.py
│   ├── redis.py
│   ├── session.py
│   ├── sqlite.py
│   └── sqlserver.py
├── quantitative_methods
│   ├── calculus.py
│   ├── classification.py
│   ├── data_cleaning.py
│   ├── eda.py
│   ├── features_selecting.py
│   ├── fit_assessment.py
│   ├── interpolation.py
│   ├── linear_algebra.py
│   ├── prob_distributions.py
│   ├── regression.py
│   ├── root.py
│   ├── sequences.py
│   ├── statistical_description.py
│   └── statistical_inference.py
├── sendgrid
│   └── handling_sendgrid.py
├── settings
│   ├── _global_slots.py
│   ├── anbima.yaml
│   ├── b3.yaml
│   ├── br_macro.yaml
│   ├── br_treasury.yaml
│   ├── comdinheiro.yaml
│   ├── generic.yaml
│   ├── global_rates.yaml
│   ├── inoa.yaml
│   ├── llms.yaml
│   ├── microsoft_apps.yaml
│   ├── session.yaml
│   ├── usa_macro.yaml
│   └── world_gov_bonds.yaml
├── trading_platforms
│   └── mt5.py
├── typeform_sdk_master
│   ├── CHANGELOG.md
│   ├── CONTRIBUTING.md
│   ├── LICENSE
│   ├── MANIFEST.in
│   ├── README.md
│   ├── requirements-dev.txt
│   ├── setup.cfg
│   ├── setup.py
│   └── typeform
│       ├── __init__.py
│       ├── client.py
│       ├── constants.py
│       ├── dealing_tf.py
│       ├── forms.py
│       ├── responses.py
│       ├── test
│       │   ├── __init__.py
│       │   ├── fixtures.py
│       │   ├── suite.py
│       │   ├── test_client.py
│       │   ├── test_forms.py
│       │   └── test_responses.py
│       └── utils.py
└── webhooks
    ├── slack.py
    └── teams.py

Getting Started

These instructions will get you a copy of the project running on your local machine for development and testing purposes.

Prerequisites

  • Python ^3.12

Installing

PyPi.org

(bash)

# latest version
pip install stpstone
# optional: versioning
pip install stpstone==0.1.0

Local Machine Version

  • Git clone

  • Pyenv for Python ^3.12.8 local installation:

(PowerShell)

Invoke-WebRequest -UseBasicParsing -Uri "https://raw.githubusercontent.com/pyenv-win/pyenv-win/master/pyenv-win/install-pyenv-win.ps1" -OutFile "./install-pyenv-win.ps1"; &"./install-pyenv-win.ps1"
(bash)

echo installing local version of python within project
cd "complete/path/to/project"
pyenv install 3.12.8
pyenv versions
pyenv global 3.12.8
pyenv local 3.12.8
  • Activate poetry .venv
(bash)

echo defining local pyenv version
pyenv global 3.12.8
pyenv which python
poetry env use "COMPLETE_PATH_PY_3.12.8"
echo check python version running locally
poetry run py --version

echo installing poetry .venv
poetry init
poery install --no-root

echo running current .venv
poetry shell
poetry add <package name, optionally version>
poetry run <module.py>

Running the Tests

  • EDA - Exploratory Data Analysis:
(bash)

cd "complete/path/to/project"
poetry run python stpstone.tests.eda.py
  • European / American Options:
(bash)

cd "complete/path/to/project"
poetry run python tests.european-american-options.py
  • Markowitz Portfolios:
(bash)

cd "complete/path/to/project"
poetry run python tests.markowitz-portfolios.py

Authors

Guilherme Rodrigues

License

Acknowledgments

  • Hat tip to anyone whose code was used
  • Inspiration
  • etc

Inspirations

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

stpstone-1.0.0.tar.gz (251.7 kB view details)

Uploaded Source

Built Distribution

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

stpstone-1.0.0-py3-none-any.whl (308.9 kB view details)

Uploaded Python 3

File details

Details for the file stpstone-1.0.0.tar.gz.

File metadata

  • Download URL: stpstone-1.0.0.tar.gz
  • Upload date:
  • Size: 251.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for stpstone-1.0.0.tar.gz
Algorithm Hash digest
SHA256 0a76a109d15a18be3ca51e121169768c4b4a6c2dd465c5d5d69aeab1089fa639
MD5 dcfd3d348a6ff37b758a976dcab164b0
BLAKE2b-256 2df6b90754ffaa662ece1e94376bd216b5322f756f44a7dd78167c5d705680be

See more details on using hashes here.

File details

Details for the file stpstone-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: stpstone-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 308.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for stpstone-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f0df7ea3c974a73a4a335b3ca132085b466c93fcd6fc6d621803e7fdbb2a24b3
MD5 67a7d7e25b00aeb17338715b8baa4ac6
BLAKE2b-256 6b97abdf54d28ff96d85e07cdb9c6b93e178fbd3020ac1f9804c914c5042987e

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