+
VectorFin
Connect Snowflake to VectorFin Financial Iceberg Data
Mount VectorFin as a native Iceberg catalog via Apache Polaris — query with standard SQL, no data movement.
10 min
Setup time
7
Iceberg tables
5K+
US tickers
Nightly
Updates
Prerequisites
📋VectorFin Pro plan
🔑API key from app.vectorfinancials.com
☁️Snowflake account
Connection Guide
1
Create external volume for GCS
Set up a Snowflake external volume pointing to the VectorFin GCS warehouse bucket.
sql
CREATE OR REPLACE EXTERNAL VOLUME vf_gcs_volume
STORAGE_LOCATIONS = (
(
NAME = 'vf-gcs-us'
STORAGE_PROVIDER = 'GCS'
STORAGE_BASE_URL = 'gcs://vectorfinancials-data/warehouse/'
)
);
-- Get the GCS service account to grant access
DESC EXTERNAL VOLUME vf_gcs_volume;2
Register Polaris REST catalog
Connect Snowflake to the VectorFin Polaris catalog (provided with Pro/Enterprise tier).
sql
CREATE OR REPLACE CATALOG INTEGRATION vectorfin_polaris
CATALOG_SOURCE = POLARIS
TABLE_FORMAT = ICEBERG
CATALOG_NAMESPACE = 'vectorfin'
REST_CONFIG = (
CATALOG_URI = 'https://catalog.vectorfinancials.com'
WAREHOUSE = 'vectorfin_warehouse'
)
REST_AUTHENTICATION = (
TYPE = OAUTH
OAUTH_CLIENT_ID = '<your_client_id>'
OAUTH_CLIENT_SECRET = '<your_client_secret>'
OAUTH_ALLOWED_SCOPES = ('PRINCIPAL_ROLE:ALL')
)
ENABLED = TRUE;3
Create Iceberg tables from catalog
Mount individual VectorFin tables into your Snowflake database.
sql
-- Transcript embeddings
CREATE OR REPLACE ICEBERG TABLE vf_transcripts
CATALOG = 'vectorfin_polaris'
EXTERNAL_VOLUME = 'vf_gcs_volume'
CATALOG_TABLE_NAME = 'embeddings.transcripts';
-- Quant signals
CREATE OR REPLACE ICEBERG TABLE vf_whystock_score
CATALOG = 'vectorfin_polaris'
EXTERNAL_VOLUME = 'vf_gcs_volume'
CATALOG_TABLE_NAME = 'signals.whystock_score';
-- Or query directly without catalog (GCS path)
CREATE OR REPLACE ICEBERG TABLE vf_signals_direct
BASE_LOCATION = 'warehouse/signals/whystock_score/'
EXTERNAL_VOLUME = 'vf_gcs_volume';4
Query financial signals
Run your first Snowflake query on VectorFin data.
sql
-- Top signals by quant score
SELECT ticker, date, score,
components:regime_score::FLOAT as regime,
components:volatility_score::FLOAT as vol_score
FROM vf_whystock_score
WHERE date >= '2024-01-01'
ORDER BY score DESC
LIMIT 20;
-- NVDA earnings embeddings
SELECT ticker, fiscal_period, chunk_idx,
VECTOR_COSINE_SIMILARITY(embedding, query_vector) as similarity
FROM vf_transcripts
WHERE ticker = 'NVDA'
ORDER BY similarity DESC
LIMIT 5;Available Tables
All 7 VectorFin data tables — bitemporal (effective_ts + knowledge_ts), append-only, nightly updates.
embeddings.transcriptsEarnings call chunk embeddings (768-dim)▼
sql
SELECT ticker, fiscal_period, chunk_idx FROM vf_transcripts WHERE ticker = 'AAPL' LIMIT 10embeddings.filingsSEC filing section embeddings▼
sql
SELECT ticker, filing_type, section FROM vf_filings WHERE filing_type = '10-K'signals.whystock_scoreComposite quant score (0–100)▼
sql
SELECT ticker, date, score FROM vf_whystock_score ORDER BY score DESC LIMIT 20signals.regimeMarket regime classification▼
sql
SELECT ticker, date, regime, confidence FROM vf_regime WHERE confidence > 0.8signals.volatilityGARCH volatility forecasts▼
sql
SELECT ticker, date, garch_vol_1d, garch_vol_5d, garch_vol_21d FROM vf_volatilitysignals.sentiment_driftEarnings sentiment drift▼
sql
SELECT ticker, fiscal_period, drift_vector FROM vf_sentiment_driftsignals.anomalyAnomaly detection scores▼
sql
SELECT ticker, date, anomaly_score, flags FROM vf_anomaly WHERE anomaly_score > 0.75Related Integrations
Start querying in 10 minutes
Sign up for VectorFin and get immediate API access.