msz13 / Goal-Based-Investing

1 stars 0 forks source link

stochastic programming #13

Open msz13 opened 4 months ago

msz13 commented 4 months ago

read:

stochastic programming

mathematical programming book http://web.mit.edu/15.053/www/AMP.htm

mutistage stochastic programming https://orbi.uliege.be/bitstream/2268/80246/1/MSPchap_preprint.pdf

Advanced acceleration techniques for Nested Benders decomposition in Stochastic Programming https://d-nb.info/1046905090/34

Introduction to stochastic learning https://industri.fatek.unpatti.ac.id/wp-content/uploads/2019/03/120-Introduction-to-Stochastic-Programming-John-R.-Birge-Francois-Louveaux-Edisi-2-2011.pdf

Benders, Nested Benders and Stochastic Programming: An Intuitive Introduction https://optimization-online.org/2013/12/4157/

Stochastic dual programming https://optimization-online.org/wp-content/uploads/2021/01/SDDP-Review-Updated.pdf

Partially observable multistage stochastic programming https://optimization-online.org/2019/03/7141/

A Stochastic Linear Goal Programming Approach to Multistage Portfolio Management Based on Scenario Generation via Linear Programming https://www.researchgate.net/publication/228355712_A_Stochastic_Linear_Goal_Programming_Approach_to_Multistage_Portfolio_Management_Based_on_Scenario_Generation_via_Linear_Programming

scenario lattice approach https://mediatum.ub.tum.de/doc/1467568/file.pdf

Lectures on stochastic programming https://bpb-us-w2.wpmucdn.com/sites.gatech.edu/dist/4/1470/files/2021/03/SPbook.pdf

Time-consistent risk-constrained dynamic portfolio optimization with transactional costs and time-dependent returns https://www.researchgate.net/publication/326750767_Time-consistent_risk-constrained_dynamic_portfolio_optimization_with_transactional_costs_and_time-dependent_returns

DYNAMIC ASSET ALLOCATION BY STOCHASTIC PROGRAMMING METHODS https://web.stanford.edu/group/SOL/dissertations/collombthesis.pdf

Foreign exchange trading and management with the stochastic dual dynamic programming method https://jfin-swufe.springeropen.com/articles/10.1186/s40854-022-00433-7

Node aggregation in stochastic nested Benders decomposition applied to hydrothermal coordination https://www.researchgate.net/publication/228871575_Node_aggregation_in_stochastic_nested_Benders_decomposition_applied_to_hydrothermal_coordination

A STOCHASTIC PROGRAMMING FRAMEWORK FOR INTERNATIONAL PORTFOLIO MANAGEMENT https://ucyweb.ucy.ac.cy/hermes/documents/goto/hermes/Thesis310804.pdf

Kim

Goal Based Investing MSP http://www.statslab.cam.ac.uk/~mike/QF2023/Kim.pdf

Value Function Gradient Learning for Large-Scale Multistage Stochastic Programming Problems https://arxiv.org/abs/2205.08934

Deep Value Function Networks for Large-scale Multistage Stochastic Programs https://proceedings.mlr.press/v206/bae23a/bae23a.pdf

https://github.com/HyunglipBae/DVFN

Transformer-based Stagewise Decomposition for Large-Scale Multistage Stochastic Optimization https://proceedings.mlr.press/v202/kim23r/kim23r.pdf

Neural Stochastic Dual Dynamic Programming https://arxiv.org/abs/2112.00874

alm

Lifetime consumption and investment with housing, deferred annuities and home equity release https://www.researchgate.net/publication/356623912_Lifetime_consumption_and_investment_with_housing_deferred_annuities_and_home_equity_release

Retirement planning in individual asset–liability management https://www.researchgate.net/publication/230886104_Retirement_planning_in_individual_asset-liability_management

Large-scale financial planning via a partially observable stochastic dual dynamic programming framework https://www.tandfonline.com/doi/abs/10.1080/14697688.2023.2221296

Asset liability management for open pension schemes using multistage stochastic programming under Solvency-II-based regulatory constraints https://www.researchgate.net/publication/320401264_Asset_liability_management_for_open_pension_schemes_using_multistage_stochastic_programming_under_Solvency-II-based_regulatory_constraints

Asset-liability management for Czech pension funds using stochastic programming https://www.researchgate.net/publication/225645204_Asset-liability_management_for_Czech_pension_funds_using_stochastic_programming

Liability-Driven Investment for Pension Funds: Stochastic Optimization with Real Assets https://papers.ssrn.com/sol3/papers.cfm?abstract_id=3832434

Long-term individual financial planning under stochastic dominance constraints (Consigli) https://aisberg.unibg.it/retrieve/e40f7b8a-7285-afca-e053-6605fe0aeaf2/Moriggia%20139336.pdf

Asset liability management under sequential stochastic dominance constraints https://optimization-online.org/wp-content/uploads/2023/11/ConsigliDentchevaMaggioniMicheli-1.pdf

A combined stochastic programming and optimal control approach to personal finance and pensions https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2432869

Optimal Investment for a Retirement Plan with Deferred Annuities https://papers.ssrn.com/sol3/papers.cfm?abstract_id=3454671

Lifetime consumption and investment with housing, deferred annuities and home equity release https://www.tandfonline.com/doi/full/10.1080/14697688.2021.1993624

Pension Metrics: Stochastic Pension Plan Design and Value-at-Risk during the Accumulation Phase https://www.researchgate.net/publication/2353626_Pension_Metrics_Stochastic_Pension_Plan_Design_and_Value-at-Risk_during_the_Accumulation_Phase

Lifetime consumption and investment with housing, deferred annuities and home equity release https://www.tandfonline.com/doi/epdf/10.1080/14697688.2021.1993624?needAccess=true

scenario trees

Scenarios for multistage stochastic programs https://www.karlin.mff.cuni.cz/~kopa/papers/vanc-ed.pdf

Overview of scenario tree generation methods, applied in financial and economic decision making https://www.semanticscholar.org/paper/Overview-of-scenario-tree-generation-methods%2C-in-V%C3%A1zsonyi/70242b4d448621b2e2b7b4833a7d912dbd4c5a65

Problem-Driven Scenario Clustering in Stochastic Optimization https://arxiv.org/pdf/2106.11717.pdf

Scenario tree generation approaches using K-means and LP moment matching methods https://www.sciencedirect.com/science/article/pii/S0377042712002300

StochOptim https://github.com/julienkeutchayan/StochOptim/tree/master

Multistage K-Means Clustering for Scenario Tree Construction https://informatica.vu.lt/journal/INFORMATICA/article/579/info

Dynamic Tree Generation https://www-user.tu-chemnitz.de/~alopi/publications/DynamicTreeGen.pdf

Problem driven scenaro tree generation https://www.mdpi.com/1999-4893/16/10/479

Scenario sampling https://www.researchgate.net/publication/317845601_Comparison_of_Sampling_Methods_for_Dynamic_Stochastic_Programming

Finite-State Markov-Chain Approximations: A Hidden Markov Approach https://papers.ssrn.com/sol3/papers.cfm?abstract_id=4137592 Inna wersja https://congress-files.s3.amazonaws.com/2022-07/SSRN_20220615.pdf

The Discretization Filter: A Simple Way to Estimate Nonlinear State Space Models https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2780166

Importence Sampling https://www.researchgate.net/publication/276162840_Importance_Sampling_in_Stochastic_Programming_A_Markov_Chain_Monte_Carlo_Approach

Simulation and optimization approaches to scenario tree generation https://www.sciencedirect.com/science/article/abs/pii/S0165188903001131

New Algorithms And Fast Implementations To Approximate Stochastic Processes https://www.researchgate.net/publication/346578092_New_Algorithms_And_Fast_Implementations_To_Approximate_Stochastic_Processes

Aggregation and Discretization in Multistage Stochastic Programming https://edoc.hu-berlin.de/bitstream/handle/18452/8999/18.pdf?sequence=1

Performance comparison of scenario generation methods applied to a stochastic optimization asset-liability_management_model https://www.researchgate.net/publication/324522700_Performance_comparison_of_scenario-generation_methods_applied_to_a_stochastic_optimization_asset-liability_management_model

Optimisation of Stochastic Programming by Hidden Markov Modelling based Scenario Generation https://www.researchgate.net/publication/46461932_Optimisation_of_Stochastic_Programming_by_Hidden_Markov_Modelling_based_Scenario_Generation

A Parsimonious Model for Generating Arbitrage-Free Scenario Trees https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2362014

Scenario tree modelling for multistage stochastic programs https://www.wias-berlin.de/people/heitsch/HR05svjour.pdf

Adaptive lattice methods for multi-asset models https://core.ac.uk/download/pdf/82640129.pdf

Experimental Study of Methods of Scenario Lattice Construction for Stochastic Dual Dynamic Programming - Scenario Lattice https://www.scirp.org/journal/paperinformation?paperid=110139

Gas Storage Valuation in Incomplete Markets - single variable, lattice discretisation https://www.researchgate.net/publication/341743003_Gas_Storage_Valuation_in_Incomplete_Markets

Discretizing Nonlinear, Non-Gaussian Markov Processes with Exact Conditional Moments https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2585859

Discretization of the Markov Regime Switching AR(1) Process http://www.liuyanecon.com/wp-content/uploads/MRS-Discretization.pdf

Foreign exchange trading and management with the stochastic dual dynamic programming method (transform AR(1) to gbm) https://jfin-swufe.springeropen.com/articles/10.1186/s40854-022-00433-7

Evaluation of Scenario-Generation Methods for Stochastic Programming https://www.researchgate.net/publication/2837745_Evaluation_of_Scenario-Generation_Methods_for_Stochastic_Programming

Scenario Reduction in Stochastic Programming: An Approach Using Probability Metrics https://www.researchgate.net/publication/243784656_Scenario_Reduction_in_Stochastic_Programming_An_Approach_Using_Probability_Metrics

Problem driven articles https://github.com/julienkeutchayan/StochOptim

Discretization

https://alexisakira.github.io/discretization/

The Discretization Filter: A Simple Way to Estimate Nonlinear State Space Models https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2780166

Discretizing Nonlinear, Non-Gaussian Markov Processes with Exact Conditional Moments https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2585859

A new method for approximating vector autoregressive processes by finite-state Markov chains https://www.researchgate.net/publication/241765539_A_new_method_for_approximating_vector_autoregressive_processes_by_finite-state_Markov_chains

Dempster

lifesycle goal achievment https://www.researchgate.net/publication/292386994_Lifecycle_Goal_Achievement_or_Portfolio_Volatility_Reduction ALM for induvidual households https://www.researchgate.net/publication/232024887_Asset_liability_management_for_individual_households planning for indyviduals https://www.researchgate.net/publication/259417038_Asset_liability_management_for_individual_households_-_Abstract_of_the_London_Discussion calm model alm https://papers.ssrn.com/sol3/papers.cfm?abstract_id=34780 global asseta allocation https://www.actuaries.org.uk/system/files/documents/pdf/baj91137-2162003.pdf

https://www.researchgate.net/publication/304682457_Planning_for_Retirement_Asset_Liability_Management_for_Individuals

Post-tax optimization with stochastic programming https://citeseerx.ist.psu.edu/document?repid=rep1&type=pdf&doi=7a785b7a8dba67ffedc7c5b997d95a1b5144458e

tools: https://msppy.readthedocs.io - python https://gamma-opt.github.io/DecisionProgramming.jl/dev/ https://mpi-sppy.readthedocs.io/en/latest/index.html - python https://ampl.com/products/ampl/apis/ https://sddp.dev/stable/ - julia

Stochastic Programming Models in Financial Optimization: A Survey https://camo.ici.ro/journal/vol5/v5a1.pdf

https://www.researchgate.net/publication/23739524_Scenario_Modeling_for_the_Management_of_International_Bond_Portfolios

Need to Meet Investment Goals? Track Synthetic Indexes with the SDDP Method https://www.ncbi.nlm.nih.gov/pmc/articles/PMC8249440/

msz13 commented 4 months ago

Wybór narzędzia

narzędzie dokumentacja zastosowanie web app zastosowanie desktop łatwość nauki koszt
mspy - ?? jesli działa z web assembly + średni 0
julia tools + - - trudny, bo nowy język i środowisko 0
ampl + ?? jesli działa z blazor + średni - nowy syntax, ale mozna w pythonie na produkcji duzy

?? - trzeba zrobić spike

z benders decomposition trzeba wielokrotnie robic solve, czy trzeba inne narzedzie trzeba benders nauczyc sie od podstaw

msz13 commented 4 months ago

Czy model się opłaca, analiza wrażliwości: model złożony, a:

msz13 commented 4 months ago

nauka:

nauka: linear programming https://colab.ampl.com/tags/ampl-lecture.html benders decomposition https://optimization-online.org/wp-content/uploads/2013/12/4157.pdf

benders ampl transportation problem z ksiazki https://github.com/ampl/amplpy/blob/master/examples/location_transportation.py

dekompozycja modelu na stages

sddp:

msz13 commented 4 months ago

TODO

msz13 commented 3 months ago

dlaczego nie?

Dla kogo nie:

dla kogo tak:

msz13 commented 3 months ago

możliwość krótszego okresu:

msz13 commented 3 months ago

wybór narzedzia:

nie moge wyprobowac roznych podejsc, bo rozne narzedzia wykorzystuje rozne jezyki modelowania

jak chce zbudowac cos swojego, musze miec benchmark w gotowym narzedziu, to w jakim jezyku zbuduje cos swojego bedzie zalezalo od produkcji, wiec na razie nie

jak bede chcial poroznac, bede musial miec dwa modele

ale przepisanie, ich nie bedzie chyba trudne, wiec sotnczyc diskrete model, a potem do sddp przepisac

msz13 commented 3 months ago

https://castle.princeton.edu/wp-content/uploads/2019/10/Powell-Reinforcement-Learning-and-Stochastic-Optimization.pdf

msz13 commented 3 months ago

hipoteza srodowiska produkcyjnego:

napisac wlasny algorytm msp w js lub c++ z uzyciem np. higs solver, ktory jest web assembly web worker, albo wykorzystuje web assemby web workers

msz13 commented 3 months ago

czy probowac swoj model z psp, czy modyfikowac model sddp

co chce zrobic porownac przynajmniej 10 i wiecej stages models, z 3-5 states

TODO

msz13 commented 3 months ago

Prezentacja

msz13 commented 3 months ago

https://doc.qt.io/qtforpython-6/index.html

msz13 commented 3 months ago

możliwosci:

msz13 commented 3 months ago

problem z hmm regimes - wymaga rownej dlugosci? rozklad zmiennych w regimei musi byc normalny?

scenario reduction musi byc metoda jaki proces bvar regime z normal regime z normal, ale inflacja ar(1)

z lattice, jest problem z var(2) i(3), nie wiadomo jakie parametry dac

msz13 commented 3 months ago

partialy observable sddp

hmm

ewentualnie:

na poczatek,

ale exopanding state, jest bez sensu bo poprzedni kilka lat, mozna zastosowac gdy stage sa 1 rok

msz13 commented 2 months ago

acwi i inflacja jest nieskorepolwana, to trudnosc

  1. model msp - na razie zawieszony, wtedy trzeba tree

  2. model sddp a) distretization markov process:

    • model hmm, lebestroft, toda, i mozna poszukac, zaden nie robiony do alm, trzeba dlugo robi
    • model partially observable z hmm states
      • mozna zrobic, ale tylko dla aktywow
      • co z inflacja, stopami?
      • trzeba sie nauczyc hmm - initalizacja, odpowiednie dane
      • co zrobic z walutami?
  3. model value functiom, nie trzeba tree, ale nie wiem, jak zrobic

msz13 commented 2 months ago

Muszę zrobić projekcję aktywów (akcje, obligacje), jak i czynników makoekonomicznych (inflacja, płace, ceny nieruchomości). Mogą one mieć różne regimy. Trzba to połączyć:

Czy istnieje korelacja miedzy regimami inflacji, a akcjami?

Może prostrzym rozwiązaniem byoby Kacje/tbsp realne, a inlfacja odziellnie, ale nei złapie się korelacji akcja/obligacja

Hmm – wig, tbsp, wibor

Regimy nie złapią zmian markostrukturalnych, nie pozwalają na dodanie views,

analiza in sample: acwi - single regime inflacja - single regime acwi i inflacja - multivariate

korelacja acwi inflacja w czasie korelacja acwi realne i inflacja w czasie kolreacja usdpln inflacja i acwi

msz13 commented 2 months ago

czytanie:

msz13 commented 2 months ago

TODO -wrażliwość objective function

msz13 commented 2 months ago

TODO - Report

julia mustache https://docs.juliahub.com/Mustache/iK5hJ/1.0.8/

Sekjce

msz13 commented 1 month ago

https://arxiv.org/pdf/2103.10813

https://ficpubs.uai.cl/files/597_Reus+Mulvey2016.pdf poszukac llinkow

przejrzec regime switching factor model file:///C:/Users/matsz/Downloads/RSRiskParityCostaKwon2019.pdf

msz13 commented 1 month ago

Regime switching real returns

Discretisation

Multiple assets

Regime switching real returns

Discretisation

edo tsb acwi gold internat usdpln eurpln

hmm bvar + discretisation bsvar + factor model +discretisation

global portfolio

mozna modelowac foreign asset w pln ale wtedy zakładamy kontynuacje drift based on inflation i exchange rate nie będziemy mogliby modelować hedga

zalozenia currncy netrual drift i tylko vilality risk parity i interest parity models – potrzebny sa osobne kraje var models na inne czynniki makro – gdp

czy inflation, i exchange rates bedzie stały, czy nie?

korelacja usd w czasie kryzysów

cele:

Global models

Problem z pln – krótki okres, ale można sprawidzic od 2003, od 1998,

Czy jeśli global porfolio to max sharp ratio porfolio, to czy subset tego porfolio, tez zapewnia max sharp ratio

Regime switching assset model

EDA:

Data fred Equity – sprawdzic czy fred data pokrywają się z wig i np. sp

Sprawdzić regression model of exchange rates regressed na interest rate

Unhedged returns – acwi pln – pln rf Hedged acwi returns – acwi local – foreign rf

Regimes

Poznawane przeze mnie modele partial observable regime switching zakładają stałą risk free rate, można też założyć stałą inflację (pierwszy krok). Nie było żadnego modelu, który łączył regime switching z mean reverting process.

Ale można przerobić mean reverting proces, na geometric brownian motion.

Zrobić test regime i dyskretyzacji.

msz13 commented 1 month ago

Zdrowia szczęścia, pomarańczy, niech Ci żona tańczy.

Hmms

Exploratory

Ar Inflation Hmm

Test po regime switching vs Markov lattice

Test sampling

Hmm – simulation – long perion

Hmm – simulation – discretisation – compere do long period Hmm – simulation form discrete regime – compere to long period

Ocena modeli

msz13 commented 1 month ago

first

inflation + real acwi pln

II inflation + real acwi pln + tbsp

III inflation + real acwi pln + tbsp gold

IV inflation + real acwi pln + tbsp gold + usd hedge/pln hedge

V inflation + real acwi pln + tbsp + gold + foreign bonds + usd hedge/pln hedge

VI inflation + real acwi pln + wig + tbsp + gold + foreign bonds + usd hedge/pln hedge

VII inflation + real usa + exWorld + development + wig + tbsp + gold + foreign bonds + usd hedge/pln hedge

VII inflation + real usa + exWorld + development + wig + tbsp + gold + foreign bonds + usd hedge/pln hedge + real estate

msz13 commented 1 month ago

TODO

msz13 commented 1 month ago

podatki

dla ike - podatek to wartośc sprzedanych - wartość wpłat na konto * udział wypłaty w całości rachunku

dla konta opodatkowanego - dla każdego aktywa wartość sprzedanych - wartość zakupów danego aktywa * udział wypłaty w całości rachunku

msz13 commented 1 month ago

caly czas kresce sie jednym punkcie

probowac model - analiza:

moetody dykretyzacji

msz13 commented 1 month ago

scenario lattice:

msz13 commented 1 month ago

msp - jak sobie radzić z course of dimensility

  1. SDDP
  2. Alternatywa do SDDP - value sddp, transformer sddp
  3. Klasyczne mssp z agregacją periods
  4. Inne modelowanie periods - np. okres emerytalny jako jeden okres, połączenie z optimal control,emerytura jako docelowy kapitał, cos jeszcze?
msz13 commented 1 month ago

Analiza do artykułu:

msz13 commented 4 weeks ago

TODO

https://jverzani.github.io/Mustache.jl/dev/#Alternatives

msz13 commented 4 weeks ago

objective functions:

msz13 commented 3 weeks ago

TODO scenarios

msz13 commented 3 weeks ago

RS

Bvar

Funkcja clusters_distributrions(data series: 2/3 dims, n_clusters) return Norm(mean,COV)

msz13 commented 3 weeks ago

kmeans

msz13 commented 2 weeks ago

Optimal portfolio choice of couples with tax-deferred accounts and survival-contingent products

msz13 commented 2 weeks ago

Zastosowanie SDDP w planowaniu finansowym

msz13 commented 2 weeks ago

model 5 stages

msz13 commented 2 weeks ago

wrażliwość inflacja

msz13 commented 1 week ago

mozna zrobic regime switching z hamilton filter

msz13 commented 6 days ago
n_assets = 2
n_steps = 3
n_scenarios = 5
result = zeros((n_assets,n_scenarios,n_steps))

for a in 1:n_assets
    for s in 1:n_scenarios
        for step in 1:n_steps
            result[a,s,step] = sim[s][step][a]
        end
    end
end

prices = [60,40]

cumres = cumprod(result .+1,dims=3)

rand_price = prices .* cumres

sum(rand_price, dims=1)
msz13 commented 5 days ago

EDA:

symulacja z north america i nowymi initial weights: wieghts_98 = [0.4885 0.3004 0.0684 0.1126 0.0301]

weights = [0.654, 0.168, 0.091, 0.061, 0.026] (z north america)

Wnioski:

msz13 commented 7 hours ago

EDA macro