--- warning: DO NOT CHANGE THIS MANUALLY, THIS IS GENERATED BY https://github.com/duckdb/community-extensions repository, check README there title: finance excerpt: | DuckDB Community Extensions SQL-native quant finance functions for DuckDB extension: name: finance description: SQL-native quant finance functions for DuckDB version: 0.2.22 language: C++ build: cmake license: MIT test_config: '{"test_env_variables": {"SKIP_TESTS": "1"}}' maintainers: - leonardovida repo: github: leonardovida/duckdb-finance ref: 0aaf8a0ef5bd68cebb441e6825ce241417b6cd77 docs: hello_world: | INSTALL finance FROM community; LOAD finance; SELECT fin_bsm_price('call', 100.0, 100.0, 1.0, 0.05, 0.20) AS price, fin_simple_return(105.0, 100.0) AS simple_return; extended_description: | DuckDB Finance adds SQL-native quant finance analytics to DuckDB under the fin_ namespace. It includes return and risk analytics, option pricing and Greeks, fixed-income and cash-flow helpers, portfolio math, technical indicators, and table functions. The extension is deterministic and local: it does not call market-data vendors or remote pricing services. extension_star_count: 8 extension_star_count_pretty: 8 extension_download_count: 11774 extension_download_count_pretty: 11.8k image: '/images/community_extensions/social_preview/preview_community_extension_finance.png' layout: community_extension_doc --- ### Compatibility Matrix This table covers all DuckDB releases that have not reached [end-of-life](https://duckdb.org/release_calendar), including LTS releases, and shows the 2 most recent patch releases of each. Older patch releases are not listed, but the extension may be available for them as well.
| Platform | 1.4.4 | 1.4.5 | 1.5.5 | 1.5.6 | 2.0.0 | | :--- | :---: | :---: | :---: | :---: | :---: | | Linux AMD64 | ❌ | ❌ | ✅ | ✅ | ❌ | | Linux ARM64 | ❌ | ❌ | ✅ | ✅ | ❌ | | macOS AMD64 | ❌ | ❌ | ✅ | ✅ | ❌ | | macOS ARM64 | ❌ | ❌ | ✅ | ✅ | ❌ | | Windows AMD64 | ❌ | ❌ | ✅ | ✅ | ❌ | | Windows ARM64 | ❌ | ❌ | ❌ | ❌ | ❌ | | WebAssembly | ❌ | ❌ | ✅ | ✅ | ❌ | ### Installing and Loading ```sql INSTALL {{ page.extension.name }} FROM community; LOAD {{ page.extension.name }}; ``` {% if page.docs.hello_world %} ### Example ```sql {{ page.docs.hello_world }}``` {% endif %} {% if page.docs.extended_description %} ### About {{ page.extension.name }} {{ page.docs.extended_description }} {% endif %} ### Added Functions | function_name | function_type | description | comment | examples | |------------------------------------|---------------|-------------|---------|----------| | fin_accrued_interest | scalar | NULL | NULL | | | fin_active_return | macro | NULL | NULL | | | fin_ad_line | macro | NULL | NULL | | | fin_adf | macro | NULL | NULL | | | fin_adosc | macro | NULL | NULL | | | fin_adx | macro | NULL | NULL | | | fin_adxr | macro | NULL | NULL | | | fin_aggregate_return | macro | NULL | NULL | | | fin_alpha | macro | NULL | NULL | | | fin_alpha_beta | macro | NULL | NULL | | | fin_amihud_illiquidity | macro | NULL | NULL | | | fin_annual_return | macro | NULL | NULL | | | fin_annuity_payment | scalar | NULL | NULL | | | fin_anova_oneway | macro | NULL | NULL | | | fin_apo | macro | NULL | NULL | | | fin_arithmetic_return | macro | NULL | NULL | | | fin_aroon | macro | NULL | NULL | | | fin_aroonosc | macro | NULL | NULL | | | fin_asian_geometric_price | scalar | NULL | NULL | | | fin_asset_or_nothing_price | scalar | NULL | NULL | | | fin_atr | macro | NULL | NULL | | | fin_autocorr | macro | NULL | NULL | | | fin_avg_drawdown | aggregate | NULL | NULL | | | fin_avg_price | scalar | NULL | NULL | | | fin_bachelier_greeks | scalar | NULL | NULL | | | fin_bachelier_implied_vol | scalar | NULL | NULL | | | fin_bachelier_price | scalar | NULL | NULL | | | fin_bar_spec | macro | NULL | NULL | | | fin_barrier_price | scalar | NULL | NULL | | | fin_bbands | macro | NULL | NULL | | | fin_beta | macro | NULL | NULL | | | fin_binomial_price | scalar | NULL | NULL | | | fin_bipower_variation | aggregate | NULL | NULL | | | fin_black76_greeks | scalar | NULL | NULL | | | fin_black76_implied_vol | scalar | NULL | NULL | | | fin_black76_price | scalar | NULL | NULL | | | fin_black_litterman_returns | macro | NULL | NULL | | | fin_bond_convexity | scalar | NULL | NULL | | | fin_bond_duration | scalar | NULL | NULL | | | fin_bond_price | scalar | NULL | NULL | | | fin_bond_ytm | scalar | NULL | NULL | | | fin_bootstrap_curve | table | NULL | NULL | | | fin_bop | macro | NULL | NULL | | | fin_bps | scalar | NULL | NULL | | | fin_bsm_all | scalar | NULL | NULL | | | fin_bsm_charm | scalar | NULL | NULL | | | fin_bsm_color | scalar | NULL | NULL | | | fin_bsm_d1 | scalar | NULL | NULL | | | fin_bsm_d2 | scalar | NULL | NULL | | | fin_bsm_delta | scalar | NULL | NULL | | | fin_bsm_elasticity | scalar | NULL | NULL | | | fin_bsm_gamma | scalar | NULL | NULL | | | fin_bsm_greeks | scalar | NULL | NULL | | | fin_bsm_implied_vol | scalar | NULL | NULL | | | fin_bsm_price | scalar | NULL | NULL | | | fin_bsm_price_dates | scalar | NULL | NULL | | | fin_bsm_prob_itm | scalar | NULL | NULL | | | fin_bsm_prob_touch | scalar | NULL | NULL | | | fin_bsm_rho | scalar | NULL | NULL | | | fin_bsm_speed | scalar | NULL | NULL | | | fin_bsm_theta | scalar | NULL | NULL | | | fin_bsm_ultima | scalar | NULL | NULL | | | fin_bsm_vanna | scalar | NULL | NULL | | | fin_bsm_vega | scalar | NULL | NULL | | | fin_bsm_vomma | scalar | NULL | NULL | | | fin_bsm_zomma | scalar | NULL | NULL | | | fin_business_days_between | scalar | NULL | NULL | | | fin_cagr | macro | NULL | NULL | | | fin_calendar | table | NULL | NULL | | | fin_calendar_spec | macro | NULL | NULL | | | fin_calmar | macro | NULL | NULL | | | fin_cashflow_spec | macro | NULL | NULL | | | fin_cci | macro | NULL | NULL | | | fin_cents_to_money | macro | NULL | NULL | | | fin_changes | macro | NULL | NULL | | | fin_changes_to_grid | table | NULL | NULL | | | fin_chi2_cdf | scalar | NULL | NULL | | | fin_chi2_inv | scalar | NULL | NULL | | | fin_clip | scalar | NULL | NULL | | | fin_cmo | macro | NULL | NULL | | | fin_component_risk | macro | NULL | NULL | | | fin_conditional_drawdown_at_risk | macro | NULL | NULL | | | fin_corr_matrix | macro | NULL | NULL | | | fin_cov_matrix | macro | NULL | NULL | | | fin_cramers_v | macro | NULL | NULL | | | fin_crosscorr | macro | NULL | NULL | | | fin_cum_return | macro | NULL | NULL | | | fin_curve_bootstrap | table | NULL | NULL | | | fin_curve_discount_factor | scalar | NULL | NULL | | | fin_curve_spec | macro | NULL | NULL | | | fin_curve_zero_rate | scalar | NULL | NULL | | | fin_cvar | macro | NULL | NULL | | | fin_data_quality_report | macro | NULL | NULL | | | fin_delta | macro | NULL | NULL | | | fin_delta_to_grid | table | NULL | NULL | | | fin_dema | macro | NULL | NULL | | | fin_digital_price | scalar | NULL | NULL | | | fin_discount_factor | scalar | NULL | NULL | | | fin_dollar_bars | table | NULL | NULL | | | fin_donchian | macro | NULL | NULL | | | fin_dot | scalar | NULL | NULL | | | fin_down_capture | macro | NULL | NULL | | | fin_downside_deviation | macro | NULL | NULL | | | fin_drawdown | aggregate | NULL | NULL | | | fin_drawdown_at_risk | macro | NULL | NULL | | | fin_drawdown_duration | aggregate | NULL | NULL | | | fin_dv01 | scalar | NULL | NULL | | | fin_dx | macro | NULL | NULL | | | fin_efficient_frontier | table | NULL | NULL | | | fin_ema | aggregate | NULL | NULL | | | fin_ema_halflife | macro | NULL | NULL | | | fin_entropy | macro | NULL | NULL | | | fin_equal_weights | scalar | NULL | NULL | | | fin_ewma_variance | aggregate | NULL | NULL | | | fin_ewma_vol | aggregate | NULL | NULL | | | fin_excess_return | macro | NULL | NULL | | | fin_exp_decay_avg | macro | NULL | NULL | | | fin_exp_decay_count | macro | NULL | NULL | | | fin_exp_decay_max | macro | NULL | NULL | | | fin_exp_decay_sum | macro | NULL | NULL | | | fin_expectancy | macro | NULL | NULL | | | fin_expected_shortfall | macro | NULL | NULL | | | fin_factor_alpha | macro | NULL | NULL | | | fin_factor_ic | macro | NULL | NULL | | | fin_factor_report | table | NULL | NULL | | | fin_factor_turnover | macro | NULL | NULL | | | fin_fama_macbeth | table | NULL | NULL | | | fin_first_non_null | macro | NULL | NULL | | | fin_forward_price | scalar | NULL | NULL | | | fin_forward_rate | scalar | NULL | NULL | | | fin_fra_rate | scalar | NULL | NULL | | | fin_from_bps | scalar | NULL | NULL | | | fin_from_log_return | macro | NULL | NULL | | | fin_future_value | scalar | NULL | NULL | | | fin_gain_to_pain | macro | NULL | NULL | | | fin_garch11_forecast | macro | NULL | NULL | | | fin_garch_fit | table | NULL | NULL | | | fin_garman_klass_vol | macro | NULL | NULL | | | fin_geometric_return | macro | NULL | NULL | | | fin_gross_return | macro | NULL | NULL | | | fin_half_life_mean_reversion | macro | NULL | NULL | | | fin_hit_ratio | macro | NULL | NULL | | | fin_hma | macro | NULL | NULL | | | fin_hrp_weights | table | NULL | NULL | | | fin_hurst | macro | NULL | NULL | | | fin_imbalance_bars | table | NULL | NULL | | | fin_information_ratio | macro | NULL | NULL | | | fin_interpolate_curve | scalar | NULL | NULL | | | fin_inverse_vol_weights | scalar | NULL | NULL | | | fin_irr | scalar | NULL | NULL | | | fin_is_business_day | scalar | NULL | NULL | | | fin_is_decimal_return | macro | NULL | NULL | | | fin_is_finite | scalar | NULL | NULL | | | fin_is_outlier_zscore | scalar | NULL | NULL | | | fin_is_price | scalar | NULL | NULL | | | fin_is_rate | scalar | NULL | NULL | | | fin_is_regular_session | scalar | NULL | NULL | | | fin_is_vol | scalar | NULL | NULL | | | fin_iv_percentile | aggregate | NULL | NULL | | | fin_iv_rank | aggregate | NULL | NULL | | | fin_jensen_alpha | macro | NULL | NULL | | | fin_kahan_sum | macro | NULL | NULL | | | fin_kama | macro | NULL | NULL | | | fin_keltner | macro | NULL | NULL | | | fin_ks_test | macro | NULL | NULL | | | fin_kyle_lambda | macro | NULL | NULL | | | fin_last_non_null | macro | NULL | NULL | | | fin_last_to_grid | table | NULL | NULL | | | fin_linear_trend | macro | NULL | NULL | | | fin_linearreg | macro | NULL | NULL | | | fin_linearreg_intercept | macro | NULL | NULL | | | fin_linearreg_slope | macro | NULL | NULL | | | fin_ljung_box | macro | NULL | NULL | | | fin_log_nav | macro | NULL | NULL | | | fin_log_return | macro | NULL | NULL | | | fin_loss_rate | macro | NULL | NULL | | | fin_macd | macro | NULL | NULL | | | fin_mad | macro | NULL | NULL | | | fin_mann_whitney_u | macro | NULL | NULL | | | fin_marginal_risk | macro | NULL | NULL | | | fin_matrix_cholesky | scalar | NULL | NULL | | | fin_matrix_is_psd | scalar | NULL | NULL | | | fin_matrix_mul | scalar | NULL | NULL | | | fin_matrix_shape | scalar | NULL | NULL | | | fin_matrix_transpose | scalar | NULL | NULL | | | fin_matrix_vecmul | scalar | NULL | NULL | | | fin_max_drawdown | aggregate | NULL | NULL | | | fin_max_sharpe_weights | macro | NULL | NULL | | | fin_median_price | scalar | NULL | NULL | | | fin_mfi | macro | NULL | NULL | | | fin_microprice | scalar | NULL | NULL | | | fin_mid | scalar | NULL | NULL | | | fin_min_variance_weights | macro | NULL | NULL | | | fin_minus_di | macro | NULL | NULL | | | fin_minus_dm | macro | NULL | NULL | | | fin_mirr | scalar | NULL | NULL | | | fin_missing_count | macro | NULL | NULL | | | fin_mom | macro | NULL | NULL | | | fin_money_round | macro | NULL | NULL | | | fin_money_sum | macro | NULL | NULL | | | fin_money_to_cents | macro | NULL | NULL | | | fin_money_weighted_sum | macro | NULL | NULL | | | fin_mutual_information | macro | NULL | NULL | | | fin_natr | macro | NULL | NULL | | | fin_nav | macro | NULL | NULL | | | fin_nearest_psd | scalar | NULL | NULL | | | fin_newey_west_tstat | macro | NULL | NULL | | | fin_next_business_day | scalar | NULL | NULL | | | fin_norm_cdf | scalar | NULL | NULL | | | fin_norm_inv | scalar | NULL | NULL | | | fin_norm_pdf | scalar | NULL | NULL | | | fin_normalize_currency | scalar | NULL | NULL | | | fin_normalize_ohlcv | table | NULL | NULL | | | fin_normalize_option_chain | table | NULL | NULL | | | fin_normalize_returns | table | NULL | NULL | | | fin_npv | scalar | NULL | NULL | | | fin_obv | macro | NULL | NULL | | | fin_ohlc | macro | NULL | NULL | | | fin_ohlcv | macro | NULL | NULL | | | fin_ols | macro | NULL | NULL | | | fin_ols_no_intercept | macro | NULL | NULL | | | fin_omega_ratio | macro | NULL | NULL | | | fin_optimizer_spec | macro | NULL | NULL | | | fin_option_chain | table | NULL | NULL | | | fin_option_market_spec | macro | NULL | NULL | | | fin_option_payoff | scalar | NULL | NULL | | | fin_option_spec | macro | NULL | NULL | | | fin_option_spec_dates | macro | NULL | NULL | | | fin_order_imbalance | scalar | NULL | NULL | | | fin_outlier_count | aggregate | NULL | NULL | | | fin_parametric_cvar | macro | NULL | NULL | | | fin_parametric_var | macro | NULL | NULL | | | fin_parkinson_vol | macro | NULL | NULL | | | fin_parse_compounding | scalar | NULL | NULL | | | fin_parse_day_count | scalar | NULL | NULL | | | fin_parse_exercise_style | scalar | NULL | NULL | | | fin_parse_option_kind | scalar | NULL | NULL | | | fin_parse_return_method | scalar | NULL | NULL | | | fin_payoff_ratio | macro | NULL | NULL | | | fin_pct_change | macro | NULL | NULL | | | fin_plus_di | macro | NULL | NULL | | | fin_plus_dm | macro | NULL | NULL | | | fin_portfolio_expected_return | scalar | NULL | NULL | | | fin_portfolio_optimize | table | NULL | NULL | | | fin_portfolio_optimize_table | table | NULL | NULL | | | fin_portfolio_return | scalar | NULL | NULL | | | fin_portfolio_return_table | table | NULL | NULL | | | fin_portfolio_sharpe | scalar | NULL | NULL | | | fin_portfolio_spec | macro | NULL | NULL | | | fin_portfolio_variance | scalar | NULL | NULL | | | fin_portfolio_variance_table | table | NULL | NULL | | | fin_portfolio_vector | macro | NULL | NULL | | | fin_portfolio_vol | scalar | NULL | NULL | | | fin_ppo | macro | NULL | NULL | | | fin_predict_linear_to_grid | table | NULL | NULL | | | fin_present_value | scalar | NULL | NULL | | | fin_prev_business_day | scalar | NULL | NULL | | | fin_price_from_return | macro | NULL | NULL | | | fin_profit_factor | macro | NULL | NULL | | | fin_put_call_parity | scalar | NULL | NULL | | | fin_quantile_spread | aggregate | NULL | NULL | | | fin_queue_imbalance | scalar | NULL | NULL | | | fin_rank_corr | macro | NULL | NULL | | | fin_rank_ic | macro | NULL | NULL | | | fin_rate | macro | NULL | NULL | | | fin_rate_from_discount | scalar | NULL | NULL | | | fin_rate_spec | macro | NULL | NULL | | | fin_rate_to_grid | table | NULL | NULL | | | fin_realized_beta | macro | NULL | NULL | | | fin_realized_corr | macro | NULL | NULL | | | fin_realized_cov | macro | NULL | NULL | | | fin_realized_quarticity | macro | NULL | NULL | | | fin_realized_variance | macro | NULL | NULL | | | fin_realized_vol | macro | NULL | NULL | | | fin_rebalance_trades | table | NULL | NULL | | | fin_recovery_factor | macro | NULL | NULL | | | fin_resample_grid | table | NULL | NULL | | | fin_resets | macro | NULL | NULL | | | fin_resets_to_grid | table | NULL | NULL | | | fin_return | macro | NULL | NULL | | | fin_risk_contribution | macro | NULL | NULL | | | fin_risk_parity_weights | macro | NULL | NULL | | | fin_risk_spec | macro | NULL | NULL | | | fin_roc | macro | NULL | NULL | | | fin_rocp | macro | NULL | NULL | | | fin_rocr | macro | NULL | NULL | | | fin_rocr100 | macro | NULL | NULL | | | fin_rogers_satchell_vol | macro | NULL | NULL | | | fin_roll_spread | macro | NULL | NULL | | | fin_rolling_beta | macro | NULL | NULL | | | fin_rolling_zscore | macro | NULL | NULL | | | fin_round_to_tick | scalar | NULL | NULL | | | fin_rsi | aggregate | NULL | NULL | | | fin_sabr_vol | scalar | NULL | NULL | | | fin_safe_div | scalar | NULL | NULL | | | fin_sar | macro | NULL | NULL | | | fin_sarext | macro | NULL | NULL | | | fin_schema_template | table | NULL | NULL | | | fin_semivariance | macro | NULL | NULL | | | fin_session_date | scalar | NULL | NULL | | | fin_sharpe | macro | NULL | NULL | | | fin_simple_return | macro | NULL | NULL | | | fin_sma | macro | NULL | NULL | | | fin_sortino | aggregate | NULL | NULL | | | fin_spread | scalar | NULL | NULL | | | fin_spread_bps | scalar | NULL | NULL | | | fin_stability | macro | NULL | NULL | | | fin_stable_corr | macro | NULL | NULL | | | fin_stable_cov | macro | NULL | NULL | | | fin_stable_mean | macro | NULL | NULL | | | fin_stable_stddev | macro | NULL | NULL | | | fin_stable_var | macro | NULL | NULL | | | fin_stddev | macro | NULL | NULL | | | fin_stoch | macro | NULL | NULL | | | fin_stochrsi | macro | NULL | NULL | | | fin_student_t_cdf | scalar | NULL | NULL | | | fin_student_t_inv | scalar | NULL | NULL | | | fin_svi_total_variance | scalar | NULL | NULL | | | fin_svi_vol | scalar | NULL | NULL | | | fin_swap_rate | scalar | NULL | NULL | | | fin_t3 | macro | NULL | NULL | | | fin_tail_ratio | macro | NULL | NULL | | | fin_tema | macro | NULL | NULL | | | fin_theils_u | macro | NULL | NULL | | | fin_tick_bars | table | NULL | NULL | | | fin_to_log_return | macro | NULL | NULL | | | fin_total_return | macro | NULL | NULL | | | fin_tracking_error | macro | NULL | NULL | | | fin_trade_sign | scalar | NULL | NULL | | | fin_treynor_ratio | macro | NULL | NULL | | | fin_trima | macro | NULL | NULL | | | fin_trimmed_mean | macro | NULL | NULL | | | fin_trix | macro | NULL | NULL | | | fin_true_range | macro | NULL | NULL | | | fin_ts_grid_spec | macro | NULL | NULL | | | fin_tsf | macro | NULL | NULL | | | fin_ttest_1samp | macro | NULL | NULL | | | fin_ttest_2samp | macro | NULL | NULL | | | fin_turnover | scalar | NULL | NULL | | | fin_twap | macro | NULL | NULL | | | fin_typ_price | scalar | NULL | NULL | | | fin_typeof | macro | NULL | NULL | | | fin_ulcer_index | aggregate | NULL | NULL | | | fin_ultosc | macro | NULL | NULL | | | fin_up_capture | macro | NULL | NULL | | | fin_upside_deviation | macro | NULL | NULL | | | fin_validate_curve_spec | macro | NULL | NULL | | | fin_validate_ohlc | scalar | NULL | NULL | | | fin_validate_option_spec | macro | NULL | NULL | | | fin_validate_rate_spec | macro | NULL | NULL | | | fin_validate_return | scalar | NULL | NULL | | | fin_validate_schema | table | NULL | NULL | | | fin_var | macro | NULL | NULL | | | fin_var_indicator | macro | NULL | NULL | | | fin_var_spec | macro | NULL | NULL | | | fin_vector_add | scalar | NULL | NULL | | | fin_vector_mean | scalar | NULL | NULL | | | fin_vector_normalize_sum | scalar | NULL | NULL | | | fin_vector_scale | scalar | NULL | NULL | | | fin_vector_sub | scalar | NULL | NULL | | | fin_vector_sum | scalar | NULL | NULL | | | fin_version | scalar | NULL | NULL | | | fin_vol_of_vol | macro | NULL | NULL | | | fin_volatility | macro | NULL | NULL | | | fin_volume_bars | table | NULL | NULL | | | fin_volume_profile | macro | NULL | NULL | | | fin_vpin | macro | NULL | NULL | | | fin_vwap | macro | NULL | NULL | | | fin_weighted_close | scalar | NULL | NULL | | | fin_weighted_mean | macro | NULL | NULL | | | fin_weighted_quantile | macro | NULL | NULL | | | fin_weighted_stddev | macro | NULL | NULL | | | fin_weighted_var | macro | NULL | NULL | | | fin_welch_ttest | macro | NULL | NULL | | | fin_willr | macro | NULL | NULL | | | fin_win_rate | macro | NULL | NULL | | | fin_winsorized_mean | macro | NULL | NULL | | | fin_wma | macro | NULL | NULL | | | fin_xirr | scalar | NULL | NULL | | | fin_yang_zhang_vol | macro | NULL | NULL | | | fin_yearfrac | scalar | NULL | NULL | | | fin_zscore_last | macro | NULL | NULL | | | fin_ztest_mean | macro | NULL | NULL | | | finance_cvar_internal | aggregate | NULL | NULL | | | finance_trimmed_mean_internal | aggregate | NULL | NULL | | | finance_vector_multiply_internal | scalar | NULL | NULL | | | finance_weighted_mean_internal | aggregate | NULL | NULL | | | finance_weighted_quantile_internal | aggregate | NULL | NULL | | | finance_weighted_var_internal | aggregate | NULL | NULL | | | finance_winsorized_mean_internal | aggregate | NULL | NULL | | ### Overloaded Functions This extension does not add any function overloads. ### Added Types This extension does not add any types. ### Added Settings This extension does not add any settings.