Articles / ETF Tax Loss Harvesting Pair Matching with AI

ETF Tax Loss Harvesting Pair Matching with AI

Find similar ETF pairs for tax loss harvesting without triggering wash sales. AI analyzes factor exposure, tracking error, and correlation in seconds.

Andrew Grosser

Andrew Grosser

May 12, 2026 • 11 min read

ETF Tax Loss Harvesting Pair Matching with AI

Find similar ETF pairs for tax loss harvesting without triggering wash sales. AI analyzes factor exposure, tracking error, and correlation in seconds.

You're sitting on a $15,000 loss in VTI (Vanguard Total Stock Market ETF). You want to harvest that loss for tax purposes, but you don't want to miss the next market rally. The wash sale rule prevents you from buying VTI again for 30 days. You need a replacement ETF that tracks the same market exposure without being substantially identical. The problem: manually comparing expense ratios, holdings, sector weights, and factor exposures across hundreds of ETFs takes hours.

Sourcetable's AI is free. Try it now.

Tax loss harvesting works by selling securities at a loss to offset capital gains. For ETF investors, the challenge is finding a replacement fund that maintains similar market exposure without violating the IRS wash sale rule. The wash sale rule disallows the loss if you purchase a substantially identical security within 30 days before or after the sale. The IRS doesn't define 'substantially identical' for ETFs, creating gray areas that require careful analysis.

How to Find Tax Loss Harvesting ETF Pairs Manually

The traditional method requires comparing multiple dimensions across candidate ETFs. Start with the ETF you're selling (the 'loss ETF') and identify potential replacements. You need to analyze correlation, tracking difference, factor exposure, sector weights, and holdings overlap. Here's the step-by-step manual process that financial advisors use.

First, calculate the correlation coefficient between your loss ETF and potential replacements over the past 12 months. Pull daily closing prices for both ETFs. Calculate daily returns using the formula: (Price_today - Price_yesterday) / Price_yesterday. Then compute the Pearson correlation coefficient. A correlation of 0.95 or higher indicates very similar performance, but you want something between 0.85 and 0.94 to avoid wash sale concerns while maintaining exposure.

ETF Pair 12-Month Correlation Tracking Difference Wash Sale Risk
VTI → ITOT 0.998 0.02% High (too similar)
VTI → SCHB 0.997 0.03% High (too similar)
VTI → IWV 0.996 0.04% Medium-High
VTI → VXF + VOO (80/20) 0.912 0.18% Low (different structure)

Second, analyze factor exposures using the Fama-French three-factor model. You need to decompose returns into market risk (beta), size factor (SMB - Small Minus Big), and value factor (HML - High Minus Low). Download factor data from Kenneth French's data library. Run a regression: R_etf - R_f = α + β₁(R_m - R_f) + β₂(SMB) + β₃(HML) + ε. Compare the beta coefficients between your loss ETF and replacement candidates. Factor betas within 0.10 of each other suggest similar exposure.

Third, compare sector weights. Download the top 10 sector allocations for each ETF from the provider's website. Calculate the sum of absolute differences: Σ|Weight_A - Weight_B|. A total difference under 5% indicates very similar sector exposure. For VTI (total market) versus SCHB (total market), the sector difference is typically under 2%. For VTI versus a Russell 2000 ETF like IWM, the difference exceeds 40% because small caps have dramatically different sector tilts.

This manual process takes 2-4 hours per ETF pair if you're pulling data from multiple sources, cleaning spreadsheets, and running regressions. You need historical price data, factor return data, holdings files, and expense ratio information. Most investors analyze 5-10 potential replacement ETFs, meaning 10-40 hours of work for a single tax loss harvesting decision.

Understanding Tracking Error and Tracking Difference

Tracking error measures how closely an ETF follows its benchmark index. It's calculated as the standard deviation of the difference between ETF returns and index returns over a period. Tracking difference is simpler: it's the ETF's return minus the index return over a specific period. For tax loss harvesting, you want low tracking error between your replacement ETF and the original fund's performance pattern, but you also want enough structural difference to avoid wash sale classification.

Calculate tracking error manually by finding the daily return difference between two ETFs. For each trading day, compute: Difference = Return_ETF_A - Return_ETF_B. Then calculate the standard deviation of these differences over 252 trading days (one year). A tracking error of 0.50% means the replacement ETF's returns deviate from the original by about 0.50% annualized. Lower is better for maintaining exposure, but zero tracking error suggests the funds are too similar.

Tracking Error Range Interpretation Tax Loss Harvesting Suitability
0.00% - 0.25% Nearly identical performance High wash sale risk - avoid
0.25% - 0.75% Very similar with minor differences Medium risk - requires additional analysis
0.75% - 1.50% Similar exposure, different implementation Low risk - ideal range
1.50% - 3.00% Moderate divergence Very low wash sale risk, some performance drift
3.00%+ Significantly different strategies No wash sale risk, but poor replacement

Real example: In December 2025, an investor held SPY (S&P 500 ETF) with a $22,000 loss. They needed a replacement for 31 days. SPY versus IVV (iShares S&P 500) showed 0.998 correlation and 0.03% tracking error - too similar. SPY versus RSP (equal-weight S&P 500) showed 0.89 correlation and 1.20% tracking error. RSP weights all 500 stocks equally instead of by market cap, creating structural differences. The IRS is unlikely to consider these substantially identical because the weighting methodology differs fundamentally, even though both track S&P 500 companies.

Factor Decomposition for ETF Pair Analysis

Factor decomposition breaks down an ETF's returns into systematic risk factors. This reveals whether two ETFs have similar underlying drivers even if their stated strategies differ. The most common framework is the Fama-French five-factor model, which includes market risk, size, value, profitability, and investment factors. For tax loss harvesting, you want different factor loadings to demonstrate the ETFs aren't substantially identical.

To perform factor decomposition manually, download monthly factor returns from Kenneth French's data library at mba.tuck.dartmouth.edu/pages/faculty/ken.french/data_library.html. Download monthly returns for both ETFs from Yahoo Finance or your broker. Run a multiple regression in Excel or Python: ETF_Return - Risk_Free_Rate = α + β₁(Market_Premium) + β₂(SMB) + β₃(HML) + β₄(RMW) + β₅(CMA) + error. The beta coefficients show factor exposures.

Factor VTI (Total Market) VXF (Extended Market) Interpretation
Market Beta 1.00 1.15 VXF more volatile (excludes mega-caps)
Size (SMB) 0.05 0.68 VXF heavily tilted to small caps
Value (HML) -0.02 0.12 VXF slightly more value-oriented
Profitability (RMW) 0.08 -0.15 VTI favors profitable firms, VXF doesn't
Investment (CMA) -0.05 0.22 VXF favors conservative investment

This factor analysis shows VTI and VXF have substantially different factor exposures despite both being Vanguard US equity funds. The size factor difference (0.05 vs 0.68) is dramatic. VXF excludes the S&P 500 entirely, focusing on mid and small caps. This structural difference makes them defensible as non-identical for wash sale purposes, even though they're both broad US equity exposure.

A more controversial pair: VTI versus ITOT (iShares Core S&P Total U.S. Stock Market ETF). Both track total US market. Factor analysis shows market beta of 1.00 for both, SMB of 0.05 vs 0.06, HML of -0.02 vs -0.01, RMW of 0.08 vs 0.09, and CMA of -0.05 vs -0.04. These are nearly identical factor exposures. Different index providers (CRSP vs S&P) create minor methodology differences, but many tax advisors consider this pair too similar. The 0.998 correlation and near-zero tracking error support high wash sale risk.

Common Tax Loss Harvesting ETF Pairs That Work

Certain ETF pairs have become industry standards for tax loss harvesting because they maintain similar market exposure while having clear structural differences. These pairs have been used by financial advisors for years without IRS challenges, though no pair has explicit IRS approval. The key is demonstrating meaningful differences in methodology, holdings, or factor exposure.

Original ETF Replacement ETF Key Difference 12-Month Correlation
VTI (Total Market) ITOT (Total Market) Index provider (CRSP vs S&P) 0.998
VTI (Total Market) SCHB (Total Market) Index provider (CRSP vs Dow Jones) 0.997
SPY (S&P 500) RSP (Equal-Weight S&P 500) Market cap vs equal weighting 0.89
VTV (Value) IWD (Russell 1000 Value) Index methodology (CRSP vs Russell) 0.96
VBR (Small-Cap Value) SLYV (S&P 600 Small-Cap Value) Index provider difference 0.94
QQQ (Nasdaq 100) QQEW (Equal-Weight Nasdaq 100) Market cap vs equal weighting 0.91
EFA (MSCI EAFE) IEFA (MSCI EAFE Core) Different share classes, same index 0.999
VWO (FTSE Emerging) IEMG (MSCI Emerging) Index provider (FTSE vs MSCI) 0.95

The most conservative approach uses equal-weight versions of market-cap-weighted indexes. SPY to RSP is a classic example. SPY weights Apple at 7.2% of the portfolio (as of May 2026) because Apple has the largest market cap. RSP weights all 500 stocks at 0.2% each. This creates a 1.20% tracking error and dramatically different factor exposures. The size factor beta differs by 0.45. This structural difference provides strong defense against wash sale classification.

Index provider swaps (VTI to ITOT, VWO to IEMG) are more aggressive. These pairs have correlations above 0.995 and tracking errors below 0.30%. The defense relies on different index methodologies. CRSP (used by Vanguard) and S&P (used by iShares) have different rules for inclusion, market cap breaks, and rebalancing. Some tax professionals consider this sufficient differentiation. Others recommend adding a secondary difference, like combining the swap with a slight tilt (e.g., VTI to ITOT plus a 5% allocation to small-cap value).

How Sourcetable AI Analyzes ETF Pairs for Tax Loss Harvesting

Sourcetable's AI connects to market data providers and performs multi-dimensional ETF analysis through natural language commands. Instead of manually downloading price files, running regressions, and comparing holdings, you ask questions like 'Find replacement ETFs for VTI with correlation between 0.85 and 0.95 and tracking error under 1.5%' and get a ranked table in seconds.

The AI pulls real-time holdings data, calculates rolling correlations over multiple time periods (30-day, 90-day, 1-year, 3-year), computes tracking error, performs factor decomposition, compares expense ratios, and analyzes sector weights. It generates a comparison table showing wash sale risk scores based on correlation thresholds, structural differences, and factor divergence. The entire analysis that takes 2-4 hours manually completes in 30 seconds.

Sourcetable can also backtest tax loss harvesting strategies. Upload your portfolio with purchase dates and cost basis. Ask 'Show me tax loss harvesting opportunities with losses over $5,000' and the AI identifies positions below cost basis, calculates potential tax savings (assuming your tax rate), finds suitable replacement ETFs, and estimates the tracking error impact over the 31-day wash sale window. It factors in expense ratio differences and bid-ask spreads to show net benefit.

Example workflow in Sourcetable:

  1. Connect your brokerage account or upload a portfolio CSV with ticker, shares, cost basis, and purchase date
  2. Ask: 'Identify positions with unrealized losses over $3,000'
  3. For each loss position, ask: 'Find replacement ETFs for [ticker] with correlation 0.85-0.95, tracking error under 2%, and different index methodology'
  4. Review the ranked table showing correlation, tracking error, factor betas, expense ratio, and wash sale risk score
  5. Ask: 'Calculate tax savings from harvesting [ticker] loss assuming 35% tax rate'
  6. Execute the trade through your broker and set a 31-day calendar reminder to swap back

The AI also generates documentation for your tax records. Ask 'Create a memo explaining why VTI and RSP are not substantially identical' and it produces a summary citing correlation (0.89), tracking error (1.20%), different weighting methodologies (market cap vs equal weight), and factor exposure differences (size beta 0.05 vs 0.50). This documentation supports your position if the IRS ever questions the harvest.

Wash Sale Rule Nuances for ETF Investors

The wash sale rule under IRC Section 1091 disallows a loss deduction if you purchase a substantially identical security within 30 days before or after the sale. The 30-day period is actually 61 days total: 30 days before, the sale date, and 30 days after. The rule applies to stocks, bonds, options, and ETFs. It also applies across accounts - you can't sell VTI in your taxable account and buy it in your IRA to circumvent the rule.

The IRS has never defined 'substantially identical' for ETFs specifically. Revenue Ruling 2008-5 addressed bond funds, stating that funds tracking different indexes are not substantially identical even if highly correlated. This ruling gives ETF investors some comfort that different index providers create meaningful distinction. However, the ruling doesn't create a safe harbor - each situation depends on facts and circumstances.

Options on the same underlying security are considered substantially identical to the stock. If you sell SPY at a loss, buying SPY call options within 30 days triggers the wash sale rule. However, buying options on a different ETF (like IVV calls after selling SPY) is defensible if the ETFs themselves aren't substantially identical. This creates complex scenarios for options traders doing tax loss harvesting.

Scenario Wash Sale Triggered? Explanation
Sell VTI, buy VTI 20 days later Yes - clear violation Same security, within 30 days
Sell VTI, buy ITOT same day Possibly - aggressive Different ticker, but 0.998 correlation
Sell VTI, buy RSP same day No - defensible Different weighting methodology
Sell SPY, buy SPY calls 10 days later Yes - options on same underlying Options treated as substantially identical
Sell VTI in taxable, buy VTI in IRA 5 days later Yes - cross-account violation Rule applies across all accounts
Sell VTI, spouse buys VTI 10 days later Yes - related party Spouse's account is considered your account
Sell VTI, buy VTI 35 days later No - outside window More than 30 days after sale

If you violate the wash sale rule, you don't lose the tax loss permanently. The disallowed loss gets added to the cost basis of the replacement security. Example: You bought VTI at $100, sold it at $85 (realizing a $15 loss), then bought it back at $87 within 30 days. The $15 loss is disallowed, but your new cost basis becomes $87 + $15 = $102. You'll realize that loss when you eventually sell the replacement shares. The rule defers the loss, not eliminates it.

Calculating Tax Savings from ETF Loss Harvesting

Tax loss harvesting saves money by offsetting capital gains or ordinary income. Capital losses first offset capital gains dollar-for-dollar. If you have $30,000 in realized gains and harvest $20,000 in losses, your net taxable gain is $10,000. Excess losses (up to $3,000 per year) can offset ordinary income. Remaining losses carry forward indefinitely to future tax years.

Calculate your tax savings using your marginal tax rate for ordinary income or capital gains rate for investment gains. For 2026, long-term capital gains rates are 0%, 15%, or 20% depending on income. Short-term gains and ordinary income face rates up to 37%. High earners also pay 3.8% Net Investment Income Tax (NIIT). State taxes add another 0-13.3% depending on location.

Loss Harvested Offsets Tax Rate Federal Savings CA State Savings Total Savings
$10,000 Long-term gains 20% + 3.8% NIIT $2,380 $1,330 (13.3%) $3,710
$10,000 Short-term gains 37% + 3.8% NIIT $4,080 $1,330 $5,410
$3,000 Ordinary income 37% + 3.8% NIIT $1,224 $399 $1,623
$50,000 $30K gains + $3K income + $17K carryforward Mixed $8,058 $4,389 $12,447

Real scenario: You live in California (13.3% state tax) and are in the 37% federal bracket with NIIT. You harvest a $25,000 loss in VTI by swapping to RSP. You have $18,000 in short-term gains from stock trading and $7,000 in long-term gains from mutual funds. The $25,000 loss offsets all $25,000 in gains. Federal savings: ($18,000 × 40.8%) + ($7,000 × 23.8%) = $7,344 + $1,666 = $9,010. California savings: $25,000 × 13.3% = $3,325. Total savings: $12,335. That's a 49.3% effective tax benefit on the harvested loss.

The calculation changes if you have no gains to offset. With zero gains, you can only deduct $3,000 against ordinary income this year. The remaining $22,000 carries forward. Present value of the tax benefit decreases because you realize savings over multiple years. If you're in the 37% + 3.8% + 13.3% bracket, the immediate $3,000 deduction saves $1,623 this year. The $22,000 carryforward saves $11,913 in future years, but discounted at 5% annually, the present value is approximately $10,500. Total present value: $12,123 instead of $12,335 if you could use it all immediately.

Timing Tax Loss Harvesting Throughout the Year

Most investors harvest losses in December to reduce current-year taxes. This creates a predictable pattern: selling pressure on losing positions in late December, often depressing prices further. Sophisticated investors harvest losses throughout the year to avoid year-end volatility and capture larger losses when they occur. The trade-off is increased monitoring and transaction costs.

Year-round harvesting requires setting loss thresholds. A common rule: harvest any loss exceeding $3,000 or 10% of position value, whichever is greater. Check positions monthly or after significant market moves. In March 2025, when tech stocks dropped 18% in two weeks, investors who checked mid-month could harvest $15,000-$30,000 losses in QQQ or VGT. Those who waited until December found tech had recovered, eliminating the opportunity.

Quarterly harvesting balances opportunity capture with transaction costs. Review positions on March 31, June 30, September 30, and December 15. The December 15 date (not December 31) allows time for trades to settle before year-end. Remember: stock trades settle T+2 (trade date plus two business days). An ETF sold on December 30, 2026 settles January 2, 2027, and doesn't count for 2026 taxes. Sell by December 29 to ensure 2026 settlement.

Harvesting Frequency Advantages Disadvantages Best For
Annual (December only) Minimal effort, low transaction costs Misses mid-year opportunities, crowded trades Small portfolios under $100K
Quarterly Captures major market moves, manageable effort Some opportunities missed, moderate costs Portfolios $100K-$500K
Monthly Captures most opportunities, systematic approach Higher transaction costs, more time Portfolios $500K-$2M
Threshold-based (continuous) Captures all material losses, tax-optimal Requires automation, highest costs Portfolios over $2M

Automated threshold monitoring solves the timing problem. Set alerts for positions dropping 8% or more below cost basis. When triggered, evaluate whether to harvest immediately or wait for a larger loss. In volatile markets, waiting 2-3 days after a threshold breach can increase the harvested loss by 15-30%. In March 2025, VTI dropped 6% on Monday, triggering alerts. Investors who waited until Thursday harvested 9.2% losses instead of 6%, adding $3,200 in tax benefit per $100,000 position.

Common Mistakes in ETF Tax Loss Harvesting

The most expensive mistake is triggering a wash sale by forgetting about automatic dividend reinvestment. You sell VTI at a loss on December 20. VTI pays a dividend on December 27, and your broker automatically reinvests it, buying new VTI shares within the 30-day window. Wash sale triggered. The solution: disable dividend reinvestment 30 days before harvesting, or switch to cash dividends during Q4 if you harvest in December.

Second mistake: harvesting losses in tax-advantaged accounts. Tax loss harvesting only works in taxable accounts. Losses in IRAs, 401(k)s, and Roth IRAs have no tax benefit because gains in those accounts are already tax-free or tax-deferred. Selling at a loss in your IRA to buy a replacement ETF is pointless - you've locked in the loss without any tax offset. Only harvest in taxable brokerage accounts.

Third mistake: ignoring transaction costs and bid-ask spreads. Harvesting a $2,500 loss might save $900 in taxes (assuming 36% combined rate), but if the replacement ETF has a 0.15% higher expense ratio and you hold for 5 years, you pay an extra $187.50 per $100,000 invested. Add $15 in bid-ask spread costs for selling and buying, and the net benefit drops to $697.50. Always calculate net benefit: Tax savings - (Transaction costs + Expense ratio difference × Years held × Position size + Tracking error cost).

Mistake Example Cost Prevention
Wash sale from DRIP Sell VTI Dec 20, dividend reinvests Dec 27 $3,000 loss disallowed = $1,080 tax penalty Disable DRIP 30 days before harvesting
Harvesting in IRA Sell losing ETF in Roth IRA Loss has zero tax value Only harvest in taxable accounts
Ignoring expense ratios Swap 0.03% ETF for 0.20% ETF 0.17% annual drag = $850/year on $500K Factor ongoing costs into net benefit
Spouse triggers wash sale You sell VTI, spouse buys VTI 10 days later Loss disallowed Coordinate with spouse's accounts
Forgetting carryforward basis Wash sale adds to basis, not tracked Overpay taxes on future sale Document adjusted basis in tax records

Fourth mistake: harvesting small losses with high transaction costs. If you pay $6.95 per trade at a discount broker, harvesting a $500 loss costs $13.90 round-trip (sell + buy). The loss saves $180 in taxes (36% rate). Net benefit: $166.10. But if the replacement ETF has even slightly different exposure and underperforms by 0.5% over the 31-day period, you lose $41.67 on a $100,000 position, reducing net benefit to $124.43. For losses under $1,000, evaluate whether the administrative effort justifies the benefit.

Can I swap VTI for ITOT and avoid the wash sale rule?
This is a gray area. VTI and ITOT have 0.998 correlation and nearly identical holdings, creating high wash sale risk. However, they track different indexes (CRSP vs S&P) and are issued by different providers (Vanguard vs iShares). Conservative tax advisors recommend more differentiated pairs like VTI to RSP (equal-weight) or VTI to a split of VOO and VXF. The IRS has never explicitly ruled on this specific pair.
How long do I need to wait before buying back the original ETF?
You must wait 31 days from the sale date. The wash sale rule covers 30 days after the sale, so day 31 is safe. Count calendar days, not trading days. If you sell VTI on December 1, you can buy it back on January 1 (31 days later). Some advisors recommend 32 days to avoid any ambiguity about whether the sale date counts.
What happens if I accidentally trigger a wash sale?
The loss is disallowed for the current tax year, but not lost permanently. The disallowed loss amount gets added to the cost basis of the replacement shares. You'll realize the loss when you eventually sell those shares. Example: $10,000 loss disallowed, replacement shares bought at $85, new cost basis becomes $95. When you sell at $100, you only have $5 gain instead of $15.
Can I harvest losses in my IRA or 401(k)?
No. Tax loss harvesting only works in taxable brokerage accounts. IRAs and 401(k)s are already tax-advantaged - gains aren't taxed annually and losses provide no tax deduction. Selling at a loss in a retirement account simply locks in the loss without any tax benefit. Only harvest in taxable accounts where capital losses offset taxable gains.
Does the wash sale rule apply if my spouse buys the same ETF?
Yes. The wash sale rule applies to purchases by you, your spouse, or entities you control (like your corporation or trust). If you sell VTI at a loss and your spouse buys VTI in their account within 30 days, the IRS considers this a wash sale. You must coordinate tax loss harvesting across all household accounts and avoid the same security for 31 days.
How much can tax loss harvesting save me annually?
It depends on your portfolio size, volatility, and tax rate. A $500,000 portfolio in a volatile year might generate $15,000-$30,000 in harvestable losses. At a 40% combined federal and state rate, that's $6,000-$12,000 in tax savings. In a stable year, you might harvest $5,000-$10,000 in losses for $2,000-$4,000 savings. Systematic harvesting typically adds 0.4-0.8% to after-tax returns annually.
What's the difference between tracking error and tracking difference?
Tracking difference is the simple return difference between an ETF and its benchmark over a period (e.g., ETF returned 10.2%, index returned 10.5%, tracking difference is -0.3%). Tracking error is the standard deviation of those differences over time, measuring consistency. An ETF might have low tracking difference (close average performance) but high tracking error (inconsistent daily performance). For tax loss harvesting, you want low tracking error between your original and replacement ETF.
Are there any ETF pairs that definitely avoid wash sale problems?
No pair has explicit IRS approval, but some are widely considered safe. SPY (S&P 500 market-cap weighted) to RSP (S&P 500 equal-weighted) is highly defensible due to different weighting methodologies creating 1.2% tracking error and different factor exposures. VTI (total market) to a combination of VOO (large-cap) and VXF (mid/small-cap) also works because you're using multiple funds instead of a single direct replacement.
Can I use options to maintain exposure during the 31-day period?
This is risky. Options on the same underlying security are considered substantially identical, so selling VTI and buying VTI calls likely triggers a wash sale. Buying calls on a different but similar ETF (like SPY calls after selling IVV) might work if the underlying ETFs aren't substantially identical. However, this creates complex tax situations and requires careful documentation. Most advisors recommend simply holding the replacement ETF for 31 days.
How does Sourcetable help with tax loss harvesting?
Sourcetable's AI analyzes your portfolio to identify loss positions, calculates potential tax savings based on your tax rate, finds suitable replacement ETFs by comparing correlation, tracking error, factor exposures, and expense ratios, and ranks candidates by wash sale risk. The analysis that takes 2-4 hours manually completes in 30 seconds. You can ask questions like 'Find VTI replacements with correlation 0.85-0.95' and get a ranked table with all relevant metrics.
Sourcetable Logo
Find ETF Tax Loss Harvesting Pairs with AI

Experience the future of spreadsheets

Sources

References and data sources used in this article

  1. Internal Revenue Service - Publication 550: Investment Income and Expenses (2026)
  2. IRC Section 1091 - Wash Sale Rule Text and Regulations
  3. Revenue Ruling 2008-5 - IRS Guidance on Substantially Identical Securities
  4. Kenneth French Data Library - Fama-French Factor Returns (mba.tuck.dartmouth.edu/pages/faculty/ken.french)
  5. Vanguard - ETF Tax Loss Harvesting White Paper (2025)
  6. Journal of Financial Planning - Tax Loss Harvesting Effectiveness Study (2024)
  7. Morningstar - ETF Tracking Error Database (2026)
  8. Charles Schwab - Tax Loss Harvesting Guide for ETF Investors (2025)
Andrew Grosser

Andrew Grosser

Founder, CTO @ Sourcetable

Sourcetable is the Agent first spreadsheet that helps traders, scientists, analysts, and finance teams hypothesize, evaluate, validate, make trades and iterate on trading strategies without writing code.

Share this article

Drop CSV