New answers tagged


Apache Cassandra would be a good fit for storing real-time intraday data. It's a partitioned row store, where rows are organized into table using a partition key. It you use a schema where you store data for one ticker per row with partitioning by day or month (it has a limit of 2B records in a row), the operations in your questions would be very performant....


One assumption is that both (or more) instruments are liquid enough to offer a market (both sides). You can use the bid/ask/mid (your choice) or "conflate" (implemented by the big boys on their data feeds). i.e. 1 second conflation: if no trade, send out last trade price (or assume so in your application).


To expand on my comment, consider the following R code: set.seed(1) returns <- runif(1000, 0.95,1.055) #Extremely simple return generation with a slight drift. plot(cumprod(returns), type = "l") lines(cumsum(returns-1)+1, col = "blue") Which gives the following result: As you can see the effect is not linear, as the difference nearly disappears ...


If the dataset contains arithmetic returns where 1+r(i)= S(i)/S(i-1) then you are correct. If the dataset contains logarithmically defined returns where r(i) = log (S(i)/S(i-1)) then your friend is correct.


Consider the GARCH(1,1) process \begin{align} r_{t+1} &= \sigma_{t+1} z_{t+1} \\ \sigma^2_{t+1} &= \omega+\alpha r^2_t +\beta \sigma^2_{t} \end{align} for the returns $r_t$, with ${z_t} \sim N (0,1)$ IID. In what follows, let us distinguish the conditional return variance $$ V [ r_{t+1} \vert \mathcal{F}_t ] = \sigma^2_{t+1} $$ from the ...

Top 50 recent answers are included