Fetches and caches ETF data daily, from csv download or api, and saves the data to a parquet file https://api.NexVeridian.com
Find a file
2025-06-12 14:29:41 -07:00
.cargo refactor: remove mold 2025-04-12 12:21:26 -07:00
.github/workflows refactor: remove mold 2025-04-12 12:21:26 -07:00
.vscode 0.2.2 2023-06-08 03:25:11 +00:00
src chore: clippy 2025-06-12 14:29:41 -07:00
tests tests: drop serial_test 2024-12-17 14:02:31 -08:00
.dockerignore 1.2.0 2023-11-20 11:41:23 -08:00
.gitignore feat: nix flake 2025-02-03 12:05:05 -08:00
Cargo.lock fix: XYZ 2025-04-12 12:29:57 -07:00
Cargo.toml fix: more renames 2025-03-02 01:35:44 -08:00
CONTRIBUTING.md feat: ticker format, test_utils, Makefile 2024-10-02 16:00:48 -07:00
docker-compose.dev.yml IZRL and PRNT closes #1 2024-06-07 13:45:08 -07:00
docker-compose.yml IZRL and PRNT closes #1 2024-06-07 13:45:08 -07:00
Dockerfile 1.0.0 2023-07-24 16:20:14 -07:00
flake.lock fix: more renames 2025-03-02 01:35:44 -08:00
flake.nix fix: more renames 2025-03-02 01:35:44 -08:00
justfile fix: more renames 2025-03-02 01:35:44 -08:00
LICENSE-Apache 1.2.0 2023-11-20 11:41:23 -08:00
LICENSE-MIT 1.2.0 2023-11-20 11:41:23 -08:00
NOTES.md 1.0.0 2023-07-24 16:20:14 -07:00
README.md readme update 2024-06-08 15:45:25 -07:00

Fetches and caches ETF data daily, from csv download or api, and saves the data to a parquet file

The code for the REST API is github.com/NexVeridian/ark-invest-api-rust and is hosted at api.NexVeridian.com

Not affiliated with Ark Invest

Install

Copy docker-compose.yml

Create data folder next to docker-compose.yml

├───data
│   └───parquet
├───docker-compose.yml

docker compose up --pull always

If building the parquet file from the first time use: ARK_SOURCE=ApiFull or ARK_SOURCE=ArkFundsIoFull

Afterwards use ARK_SOURCE=ApiIncremental

Changing the data source

In docker-compose.yml, change the data source by changing the environment variable

environment:
	- ARK_SOURCE=ApiIncremental

Env string ARK_SOURCE must be in the enum Source

pub enum Source {
    // Reads Parquet file if exists
    Read,
    // From ARK Invest
    Ark,
    // From api.NexVeridian.com
    #[default]
    ApiIncremental,
    // From api.NexVeridian.com, not usually nessisary, use ApiIncremental
    ApiFull,
    // From arkfunds.io/api, avoid using, use ApiIncremental instead
    ArkFundsIoIncremental,
    // From arkfunds.io/api, avoid using, use ApiFull instead
    ArkFundsIoFull,
}

License

All code in this repository is dual-licensed under either License-MIT or LICENSE-APACHE at your option. This means you can select the license you prefer. Why dual license