/quantclean

🧹 Quantclean is a program that reformats financial dataset to US Equity TradeBar (Quantconnect format)

Primary LanguagePythonMIT LicenseMIT

Quantclean 🧹

"Make it cleaner, make it leaner"

Already used by several people working in the quant and finance industries, Quantclean is the all-in-one tool that will help you to reformat your dataset and clean it.

Quantclean is a program that reformats every financial dataset to US Equity TradeBar (Quantconnect format)

We all faced the problem of reformating or data to a standard. Manual data cleaning is clearly boring and takes time. Quantclean is here to help you and to make you life easier.

Works great with datas from Quandl, Algoseek, Alpha Vantage, yfinance, and many other more...

Installation

pip install quantclean

Few things you may want to know before getting started 🍉

  1. Even if you don't have an open, close, volume, high, low, date column, quantclean will create a blank column for it. No problem!

  2. The dataframe generated will look like this if you have a date and time column (or if both are on the same column):

Date Open High Low Close Volume
20131001 09:00 6448000 6448000 6448000 6448000 90
  • Date - String date "YYYYMMDD HH:MM" in the timezone of the data format.
  • Open - Deci-cents Open Price for TradeBar.
  • High - Deci-cents High Price for TradeBar.
  • Low - Deci-cents Low Price for TradeBar.
  • Close - Deci-cents Close Price for TradeBar.
  • Volume - Number of shares traded in this TradeBar.
  1. You can also get something like that if use the sweeper_dash function instead of sweeper
Date Open High Low Close Volume
2013-10-01 09:00:00 6448000 6448000 6448000 6448000 90

As you can see, the date format is YYYY-MM-DD and no more YYYYMMDD.

  1. If you just have a date column (e.g : something like YYYY-MM-DD), it will look like this:
Date Open High Low Close Volume
20131001 6448000 6448000 6448000 6448000 90

You can also use the sweeper_dash function here.

How to use it? 🚀

First, here is a notebook that give you an example of how to use quantclean.

Note : I took this data from Quandl, your dataset doesn't have to look like this one necessarily, quantclean adapts to your dataset as well as possible

from quantclean import sweeper

df = pd.read_csv('AS-N100.csv')
df

_df = sweeper(df)
_df

Output:

Now, you may not be happy of this date colum which is presented in the YYYYMMDD format and maybe be prefer YYYY-MM-DD.

In that case do :

df_dash = sweeper_dash(df)
df_dash

Output:

Contribution

If you have some suggestions or improvements don't hesitate to create an issue or make a pull request. Any help is welcome!