You're going to have to do a lot of guesswork, obviously, so it's best to keep things mathematically simple. First off, choose a "certainty level" as some quantile $q$, perhaps around 0.9, and the corresponding normal variate $z=N^{-1}(1-q)$.
Start by figuring out how much time $T_i$ you think each position $N_i$ will take to liquidate if necessary. Then choose some high percentile (not necessarily $q$) like 95% and set your overall horizon $T$ to the 95th percentile of those liquidation times.
$$T = Q_{95}(\{T_i\})$$
Now for each stock, use the existing data to find a return beta to the SP500
$$r_i = \beta^{(i)} r_{SP} + \epsilon^{(i)}$$
The variance $\sigma_i^2$ of the error terms $\epsilon^{(i)}$ is the "idiosyncratic variance" for this stock.
To account for the fact that correlations go to 1.0 in times of market stress, we will use a haircut model where the SP500 and every idiosyncratic term in the portfolio has experienced a $q$-level loss at horizon $T$.
Ignoring interest rates, we value each stock with current price $S_i$ at
$$ P_i = S_i\exp\left[\beta^{(i)} \sigma_{SP} \sqrt{T} z + \sigma_{i} \sqrt{T} z - (\beta^{(i)} \sigma_{SP}^2 + \sigma_{i})T/2\right]$$