Skip to content

Commit b744dd3

Browse files
committed
adding portfolios name
1 parent 40e5691 commit b744dd3

2 files changed

Lines changed: 8 additions & 31 deletions

File tree

scripts/portfolio.py

Whitespace-only changes.

test.py

Lines changed: 8 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -9,38 +9,15 @@
99
print("🧪 CREATE PORTFOLIO TABLES ")
1010
print("=" * 60)
1111
query = f"""
12-
CREATE TABLE portfolio_positions (
13-
date DATE NOT NULL,
14-
ticker VARCHAR(10) NOT NULL,
15-
16-
-- Dati posizione base
17-
shares INTEGER NOT NULL, -- numero azioni possedute
18-
avg_cost DECIMAL(10,4) NOT NULL, -- costo medio di acquisto
19-
current_price DECIMAL(10,4) NOT NULL, -- prezzo corrente
20-
current_value DECIMAL(12,2) NOT NULL, -- valore corrente (shares * current_price)
21-
22-
-- Metriche posizione
23-
position_weight_pct DECIMAL(8,4), -- peso % nel portafoglio totale
24-
position_pnl_pct DECIMAL(8,4), -- P&L % dalla media acquisti
25-
position_volatility DECIMAL(8,4), -- volatilità rolling 30 giorni della posizione
26-
position_sharpe DECIMAL(8,4), -- sharpe ratio rolling 30 giorni della posizione
27-
28-
-- Metriche di rischio posizione
29-
position_var_95 DECIMAL(12,2), -- Value at Risk 95% (1 giorno)
30-
beta_vs_portfolio DECIMAL(6,4), -- beta rispetto al portafoglio
31-
32-
-- Metadata
33-
created_at TIMESTAMP DEFAULT NOW(),
34-
35-
-- Chiavi
36-
PRIMARY KEY (date, ticker),
37-
FOREIGN KEY (date) REFERENCES portfolio_snapshots(date) ON DELETE CASCADE
38-
);
12+
ALTER TABLE portfolio_snapshots
13+
ADD COLUMN portfolio_name VARCHAR(50) DEFAULT 'default';
3914
40-
-- Indici per performance
41-
CREATE INDEX idx_portfolio_positions_date ON portfolio_positions(date);
42-
CREATE INDEX idx_portfolio_positions_ticker ON portfolio_positions(ticker);
43-
CREATE INDEX idx_portfolio_positions_weight ON portfolio_positions(position_weight_pct DESC);
15+
ALTER TABLE portfolio_positions
16+
ADD COLUMN portfolio_name VARCHAR(50) DEFAULT 'default';
17+
18+
ALTER TABLE portfolio_positions
19+
DROP CONSTRAINT portfolio_positions_pkey,
20+
ADD PRIMARY KEY (date, ticker, portfolio_name);
4421
4522
"""
4623
db.execute_query(query, fetch=False)

0 commit comments

Comments
 (0)