Skip to content

Financial technical and fundamental analysis indicator library for pystockdb.

License

Notifications You must be signed in to change notification settings

portfolioplus/pystockfilter

Repository files navigation

PyStockFilter

Release Build CI Build PyPI - Downloads Coverage Status Codacy Badge

PyStockFilter is a Python library that allows users to create custom stock filters using a range of fundamental and technical indicators. With support for data sources like Yahoo Finance, local data, and pystockdb, PyStockFilter is a versatile solution for building and backtesting technical and fundamental trading strategies.

Features

  • Data Compatibility: Integrates with Yahoo Finance, local data, and pystockdb.
  • Built-in Indicators: Includes essential technical indicators, and supports custom indicator creation.
  • Backtesting: Enables testing of strategies on historical data.
  • Optimization Tools: Offers parameter optimization, including sequential and chunked data optimization.
  • Custom Strategy Support: Extendable with your own strategies and indicators.

Built-in Filters

Technical Filters

PyStockFilter includes several popular technical indicators, which can be used out of the box or customized:

  • Simple Moving Average (SMA)
  • Exponential Moving Average (EMA)
  • Relative Strength Index (RSI)
  • Ultimate Oscillator (UO)
  • Moving Average Convergence Divergence (MACD)
  • Bollinger Bands (BB)

For custom indicators, refer to the examples in the src/pystockfilter/strategy directory.

Installation

To install PyStockFilter, run:

pip install pystockfilter

Quick Start Guide

For detailed examples on setting up strategies, defining parameters, and running the optimizer, please visit the Examples Directory in the PyStockFilter repository.

Issue Tracker

Report issues, request features, or contribute via the GitHub Issue Tracker:

PyStockFilter Issue Tracker

Disclaimer

This software is for educational purposes only. Do not risk money which you are afraid to lose. USE THE SOFTWARE AT YOUR OWN RISK. THE AUTHORS AND ALL AFFILIATES ASSUME NO RESPONSIBILITY FOR YOUR TRADING RESULTS.