Skip to main content

Finmiti

This project is developed for my personal use. I am developing this to keep the documentation, architecture and pipeline consistent so that I can focus more on developing strategies instead of developing pipelines.

Visit Finmiti guide for further steps.

This project is solely developed for my personal use. I am publishing this only to keep myself updated and to remove the headache of setting up the framework again and again.


Finmiti is a research-first quantitative trading framework designed to keep strategy logic, execution logic, and accounting logic strictly separated.

It exists to eliminate repeated reinvention of trading pipelines, so you can focus on researching strategies, not rebuilding infrastructure.

What Finmiti Is (and Is Not)

Finmiti is:

  • a framework for systematic trading research
  • equally suited for backtesting and live trading
  • opinionated by design
  • built around explicit, auditable abstractions

Finmiti is not:

  • a strategy library
  • a signal generator
  • a black-box trading system

If you want flexibility at the cost of correctness, this framework will feel restrictive. That restriction is intentional.

The Core Trading Loop

Every strategy in finmiti follows the same explicit loop:

Market Data → Strategy → Orders → Portfolio → Execution → Accounting

Each stage is implemented as a separate module with strict responsibilities.

This guarantees that:

  • strategies remain stateless
  • execution assumptions are explicit
  • accounting is consistent
  • backtests can be trusted
  • live trading reuses the same abstractions

Major Modules

Finmiti is organized into the following conceptual modules:

Client Handling

Handles interaction with external systems such as broker APIs and live data feeds. Keeps the rest of the framework broker-agnostic.

Stocks

Manages symbols, historical data, and OHLCV storage. Acts as the foundation for all market data access.

Strategy

Consumes immutable market snapshots and emits order intent only. Strategies never manage cash, positions, or execution details.

Orders

Orders are the contract between strategy, portfolio, and execution. They represent intent, not outcome.

Executioners

Simulate (or connect to) market reality: slippage, brokerage, partial fills, or live execution.

Portfolio

The single source of truth for positions, cash, and PnL. All state mutation happens here.

Backtesting

Pure orchestration. Iterates over time and wires everything together without adding logic.

Final Note

I have built this for my personal use in mind.

Download files

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

Source Distribution

finmiti-0.0.1.6.tar.gz (20.5 kB view details)

Uploaded Source

Built Distribution

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

finmiti-0.0.1.6-py3-none-any.whl (21.6 kB view details)

Uploaded Python 3

File details

Details for the file finmiti-0.0.1.6.tar.gz.

File metadata

  • Download URL: finmiti-0.0.1.6.tar.gz
  • Upload date:
  • Size: 20.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for finmiti-0.0.1.6.tar.gz
Algorithm Hash digest
SHA256 957cc96b7345feb1e4a18be43b7707c0483ee5fdb53205a41729b14c791be9c2
MD5 3d85e1ad33e09af9a8b97958c2e74882
BLAKE2b-256 c58ee5cc0e843fa49b969c2be0e318d06f8f2c68aad5ed27e602a262fa5166a0

See more details on using hashes here.

File details

Details for the file finmiti-0.0.1.6-py3-none-any.whl.

File metadata

  • Download URL: finmiti-0.0.1.6-py3-none-any.whl
  • Upload date:
  • Size: 21.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for finmiti-0.0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 21107dbbe4b089e45340cc582a7e244090a16bddf4902db94cb8855af2b8f6d9
MD5 84041283191bbda5bc04089601f3fec0
BLAKE2b-256 677df1b5b36b37edc7e7b9b4cae52f74ea9b81775d968772eaaebc7c8f365d71

See more details on using hashes here.

Release history Release notifications | RSS feed

0.0.2.0

2 files

0.0.1.8

2 files

0.0.1.7

2 files

This release

0.0.1.6 This release

2 files

0.0.1.5

2 files

0.0.1.4

2 files

0.0.1.2

2 files

0.0.1

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page