Complete reference for FARP configuration via environment variables.
Copy the example file:
copy .env.example .env # Windows
cp .env.example .env # Linux/Mac
Variable
Default
Description
POSTGRES_HOST
localhost
Database host
POSTGRES_PORT
5432
Database port
POSTGRES_DB
farp_db
Database name
POSTGRES_USER
farp
Database user
POSTGRES_PASSWORD
farp_secret
Database password
DATABASE_URL
(constructed)
Full connection URL
Variable
Default
Description
API_HOST
0.0.0.0
API bind host
API_PORT
8000
API port
API_DEBUG
true
Debug mode (SQL logging)
Variable
Default
Description
STREAMLIT_PORT
8501
Dashboard port
Variable
Default
Description
SCHEDULER_ENABLED
true
Enable background jobs
PRICE_UPDATE_INTERVAL_MINUTES
5
Price refresh interval
FX_UPDATE_INTERVAL_MINUTES
15
FX rate refresh interval
Variable
Default
Description
DEFAULT_CURRENCY
USD
Base/reporting currency
MARKET_DATA_CACHE_MINUTES
5
Price cache duration
Variable
Default
Description
RISK_FREE_RATE
0.02
Risk-free rate (2%)
VAR_CONFIDENCE_LEVELS
95,99
VaR confidence levels
VAR_HORIZONS_DAYS
1,10
VaR time horizons
VOLATILITY_WINDOWS_DAYS
20,60,252
Volatility windows
Variable
Default
Description
LOG_LEVEL
INFO
Log level
LOG_FORMAT
json
Log format (json/text)
Variable
Default
Description
PGADMIN_EMAIL
admin@farp.local
Admin email
PGADMIN_PASSWORD
admin
Admin password
Configuration is managed via pydantic-settings:
from src .config import settings
# Access settings
print (settings .database .url )
print (settings .api .port )
print (settings .risk .risk_free_rate )
Available Settings Objects
settings .database # DatabaseSettings
settings .api # APISettings
settings .scheduler # SchedulerSettings
settings .market_data # MarketDataSettings
settings .risk # RiskSettings
# Database
POSTGRES_HOST=localhost
POSTGRES_PORT=5432
POSTGRES_DB=farp_db
POSTGRES_USER=farp
POSTGRES_PASSWORD=your_secure_password
# API
API_PORT=8000
API_DEBUG=false
# Risk
RISK_FREE_RATE=0.05
VAR_CONFIDENCE_LEVELS=95,99