daily report of @arkinvest ETF activity + data collection

Overview

ark_invest

daily weekday report of @arkinvest ETF activity + data collection

This script was created to:

  1. Extract and save daily csv's from ARKInvest's holdings.
  2. Quick command-line report about security additions and removals within each of the 6 ARK ETFs ($ARKK, $ARKW, $ARKG, $ARKQ, $ARKF, $PRNT)
  3. Quick command-line report about significant changes in security positions within each of the 6 ARK ETFs ($ARKK, $ARKW, $ARKG, $ARKQ, $ARKF, $PRNT)
  4. Option to save day-over-day changes in holdings within each of the 6 ARK ETFs ($ARKK, $ARKW, $ARKG, $ARKQ, $ARKF, $PRNT)

Current suggested process flow as follows:

From command-line:

  1. Run 'import_status()':
    • Saves current csv from ARKInvest site for each of the 6 ETFs as 'temp.csv' in respective data subdirectories.
    • Identifies whether the temp file is new, or a duplicate of your previous day's run. *ARK appears to upload new csv's at 7PM EST.
    • If step 2 does not identify a new import, the program will exit().
  2. Run 'allocation()':
    • Compares ticker presence within the two most recent confirmed files.
  3. Run 'changes(significance)':
    • Identifies significant increases or decreases in shares within the two most recent confirmed files. Significance parameter = float.
    • Example: changes(6.0) -> Within each ETF, return shares increase >= 6.0% AND return shares decrease <= -6.0%
  4. Run 'all_dfs()' if you would like to access each of the ETF's most recent day-over-day report. The function will return a list of pandas dataframes. *See below:
    • DoD_reports = all_dfs()
    • arkk = DoD_reports[0]
    • arkw = DoD_reports[1]
    • arkg = DoD_reports[2]
    • arkq = DoD_reports[3]
    • arkf = DoD_reports[4]
    • prnt = DoD_reports[5]

Still a work in progress but wanted to share with everyone asap. Curious to see if this is helpful!

Some items I am working through now:

  1. What if ARK updates some of the files, but not all?
  2. Is it convenient to exit program after identifying that a new csv is not available?
  3. You will notice a 'queue' variable that I am playing around with. This is to potentially only pass eligible import items to different functions.
  4. Considering using a SQLite db file instead of saving files to subdirectories (obviously not ideal)
  5. Considering dashboard or API endpoint on simplimoku.com (a simple site for ichimoku charting and ichimoku signal screener)
Pretty Confusion Matrix

Pretty Confusion Matrix Why pretty confusion matrix? We can make confusion matrix by using matplotlib. However it is not so pretty. I want to make con

Junseo Ko 5 Nov 22, 2022
Decision Border Visualizer for Classification Algorithms

dbv Decision Border Visualizer for Classification Algorithms Project description A python package for Machine Learning Engineers who want to visualize

Sven Eschlbeck 1 Nov 01, 2021
A library for bridging Python and HTML/Javascript (via Svelte) for creating interactive visualizations

A library for bridging Python and HTML/Javascript (via Svelte) for creating interactive visualizations

Anthropic 98 Dec 27, 2022
Friday Night Funkin - converts a chart from 4/4 time to 6/8 time, or from regular to swing tempo.

Chart to swing converter As seen in https://twitter.com/i_winxd/status/1462220493558366214 A program written in python that converts a chart from 4/4

5 Dec 23, 2022
Declarative statistical visualization library for Python

Altair http://altair-viz.github.io Altair is a declarative statistical visualization library for Python. With Altair, you can spend more time understa

Altair 8k Jan 05, 2023
Make sankey, alluvial and sankey bump plots in ggplot

The goal of ggsankey is to make beautiful sankey, alluvial and sankey bump plots in ggplot2

David Sjoberg 156 Jan 03, 2023
The Python ensemble sampling toolkit for affine-invariant MCMC

emcee The Python ensemble sampling toolkit for affine-invariant MCMC emcee is a stable, well tested Python implementation of the affine-invariant ense

Dan Foreman-Mackey 1.3k Jan 04, 2023
100 Days of Code The Complete Python Pro Bootcamp for 2022

100-Day-With-Python 100 Days of Code - The Complete Python Pro Bootcamp for 2022. In this course, I spend with python language over 100 days, and I up

Rajdip Das 8 Jun 22, 2022
A little logger for machine learning research

Blinker Blinker provides a fast dispatching system that allows any number of interested parties to subscribe to events, or "signals". Signal receivers

Reinforcement Learning Working Group 27 Dec 03, 2022
With Holoviews, your data visualizes itself.

HoloViews Stop plotting your data - annotate your data and let it visualize itself. HoloViews is an open-source Python library designed to make data a

HoloViz 2.3k Jan 02, 2023
An interactive dashboard for visualisation, integration and classification of data using Active Learning.

AstronomicAL An interactive dashboard for visualisation, integration and classification of data using Active Learning. AstronomicAL is a human-in-the-

45 Nov 28, 2022
Python+Numpy+OpenGL: fast, scalable and beautiful scientific visualization

Python+Numpy+OpenGL: fast, scalable and beautiful scientific visualization

Glumpy 1.1k Jan 05, 2023
Fast 1D and 2D histogram functions in Python

About Sometimes you just want to compute simple 1D or 2D histograms with regular bins. Fast. No nonsense. Numpy's histogram functions are versatile, a

Thomas Robitaille 237 Dec 18, 2022
The repository is my code for various types of data visualization cases based on the Matplotlib library.

ScienceGallery The repository is my code for various types of data visualization cases based on the Matplotlib library. It summarizes the code and cas

Warrick Xu 2 Apr 20, 2022
100 data puzzles for pandas, ranging from short and simple to super tricky (60% complete)

100 pandas puzzles Puzzles notebook Solutions notebook Inspired by 100 Numpy exerises, here are 100* short puzzles for testing your knowledge of panda

Alex Riley 1.9k Jan 08, 2023
This is a Boids Simulation, written in Python with Pygame.

PyNBoids A Python Boids Simulation This is a Boids simulation, written in Python3, with Pygame2 and NumPy. To use: Save the pynboids_sp.py file (and n

Nik 17 Dec 18, 2022
1900-2016 Olympic Data Analysis in Python by plotting different graphs

🔥 Olympics Data Analysis 🔥 In Data Science field, there is a big topic before creating a model for future prediction is Data Analysis. We can find o

Sayan Roy 1 Feb 06, 2022
NorthPitch is a python soccer plotting library that sits on top of Matplotlib

NorthPitch is a python soccer plotting library that sits on top of Matplotlib.

Devin Pleuler 30 Feb 22, 2022
GUI for visualization and interactive editing of SMPL-family body models ie. SMPL, SMPL-X, MANO, FLAME.

Body Model Visualizer Introduction This is a simple Open3D-based GUI for SMPL-family body models. This GUI lets you play with the shape, expression, a

Muhammed Kocabas 207 Jan 01, 2023
Fast scatter density plots for Matplotlib

About Plotting millions of points can be slow. Real slow... 😴 So why not use density maps? ⚡ The mpl-scatter-density mini-package provides functional

Thomas Robitaille 473 Dec 12, 2022