From c6742102a72be28b6e8493613933d7f4ffabec54 Mon Sep 17 00:00:00 2001 From: NexVeridian Date: Fri, 7 Jun 2024 15:58:36 -0700 Subject: [PATCH] fix ARKVX --- src/util.rs | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/util.rs b/src/util.rs index 0c1d628..82bd520 100644 --- a/src/util.rs +++ b/src/util.rs @@ -33,7 +33,7 @@ pub enum Ticker { impl Ticker { pub fn value(&self) -> &str { match *self { - Ticker::ARKVX => "ARKVX", + Ticker::ARKVX => "ARK_VENTURE_FUND_ARKVX_HOLDINGS.csv", Ticker::ARKF => "FINTECH_INNOVATION", Ticker::ARKG => "GENOMIC_REVOLUTION", Ticker::ARKK => "INNOVATION", @@ -281,6 +281,12 @@ impl Ark { .rename(vec!["CUSIP", "weight (%)"], vec!["cusip", "weight"]) .collect()?; } + if df.get_column_names().contains(&"weight (%)") { + df = df + .lazy() + .rename(vec!["weight (%)"], vec!["weight"]) + .collect()?; + } if !df.get_column_names().contains(&"market_value") { df = df @@ -612,7 +618,7 @@ impl Ark { pub fn get_csv_ark(&self) -> Result { let url = match self.ticker { - self::Ticker::ARKVX => "https://ark-ventures.com/wp-content/uploads/funds-etf-csv/ARK_VENTURE_FUND_HOLDINGS.csv".to_owned(), + self::Ticker::ARKVX => format!("https://assets.ark-funds.com/fund-documents/funds-etf-csv/{}", self.ticker.value()), self::Ticker::ARKA | self::Ticker::ARKZ | self::Ticker::ARKC | self::Ticker::ARKD | self::Ticker::ARKY => format!("https://cdn.21shares-funds.com/uploads/fund-documents/us-bank/holdings/product/current/{}-Export.csv", self.ticker.value()), _ => format!("https://assets.ark-funds.com/fund-documents/funds-etf-csv/ARK_{}_ETF_{}_HOLDINGS.csv", self.ticker.value(), self.ticker),