Skip to content

Submission: Tingjun attempt 2#15

Merged
Orrell merged 10 commits into
q-variance:mainfrom
tingjun-yang:feature/garch-vol-modeling
Dec 26, 2025
Merged

Submission: Tingjun attempt 2#15
Orrell merged 10 commits into
q-variance:mainfrom
tingjun-yang:feature/garch-vol-modeling

Conversation

@tingjun-yang

Copy link
Copy Markdown
Contributor

Hi David,

I would like to withdraw my previous submission (tingjun) and replace it with a new GARCH(1,1) Volatility Model (labeled tingjun2). My original model had some structural issues that I believe are resolved in this new iteration.

This GARCH(1,1) implementation utilizes three optimized parameters that yield a highly stable q-variance fit. On a 100,000-day simulation, the model recovered fit parameters of $\sigma_0 = 0.252$ and $z_{off} = 0.026$, which align closely with the target values of $0.259$ and $0.021$. Crucially, the $R^{2}$ for this fit is 0.996, exceeding the 0.995 entry threshold.

While testing on a 5M-day sample showed a slight divergence in fit—likely due to the sensitivity of global de-meaning to sample size—I am confident that re-tuning the parameters for larger datasets will maintain this high level of performance.

I have attached the updated model documentation and results and a csv file with 100k prices (simulated_prices.csv). I look forward to your feedback.

Best regards,
Tingjun Yang

@Orrell Orrell merged commit 7ad25b8 into q-variance:main Dec 26, 2025
1 check passed
@Orrell

Orrell commented Dec 26, 2025

Copy link
Copy Markdown
Contributor

Hi @tingjun-yang Thanks for this, we will take a look. One thing is that as mentioned in the README the aim is to fit the specific parabola shown there in Figure 1 (otherwise people could ignore the drift term, and it would not be a level playing field). For consistency, can you revise your parameters and rescore? I commented out a line in the score_submission.py file to make this clearer. Best, David

@Orrell

Orrell commented Dec 26, 2025

Copy link
Copy Markdown
Contributor

Hi @tingjun-yang Please do that test using the full length dataset, not just the shorter simulations. Also please declare the 0.01 in the line V = omega + (lam * V) + ((1 - lam - 0.01) * ret_sq) as a parameter since it affects the results. Thanks, David

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants