Giter VIP home page Giter VIP logo

finplot's Introduction

Finance Plot

Finance Plotter, or finplot, is a performant library with a clean api to help you with your backtesting. It's optionated with good defaults, so you can start doing your work without having to setup plots, colors, scales, autoscaling, keybindings, handle panning+vertical zooming (which all non-finance libraries have problems with). And best of all: it can show hundreds of thousands of datapoints without batting an eye.

Features

  • Great performance compared to mpl_finance, plotly and Bokeh
  • Clean api
  • Works with both stocks as well as cryptocurrencies on any time resolution
  • Show as many charts as you want on the same time axis, zoom on all of them at once
  • Auto-reload position where you were looking last run
  • Overlays, fill between, value bands, symbols, labels, legend, volume profile, heatmaps, etc.
  • Can show real-time updates, including orderbook. Save screenshot.
  • Comes with a dozen great examples.

feature1

feature2

feature3

feature3

What it is not

finplot is not a web app. It does not help you create an homebrew exchange. It does not work with Jupyter Labs.

It is only intended for you to do backtesting in. That is not to say that you can't create a ticker or a trade widget yourself. The library is based on the eminent pyqtgraph, which is fast and flexible, so feel free to hack away if that's what you want.

Easy installation

$ pip install finplot

Example

It's straight-forward to start using. This shows every daily candle of Apple since the 80'ies:

import finplot as fplt
import yfinance

df = yfinance.download('AAPL')
fplt.candlestick_ochl(df[['Open', 'Close', 'High', 'Low']])
fplt.show()

For more examples and a bunch of snippets, see the examples directory or the wiki. There you'll find how to plot MACD, Parabolic SAR, RSI, volume profile and much more.

Coffee

For future support and features, consider a small donation.

BTC: bc1qk8m8yh86l2pz4eypflchr0tkn5aeud6cmt426m

ETH: 0x684d7d4C52ed428AE9a36B2407ba909D896cDB67

finplot's People

Contributors

highfestiva avatar yamen avatar jonbysvol avatar atilius-regulus avatar shujaatak avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.