Ok, luego de investigar un poco más y la sugerencia de @Marc B, finalmente llegué a donde quería. En caso de que alguien más necesite ayuda, aquí está mi respuesta:
set @price = (select preconormal from precos where codigowine='10088' order by timestamp asc limit 1);
En la línea de arriba, estoy configurando @price en el primer registro en lugar de cero, para evitar obtener un lag_price de 65,60 en la primera fila.
A continuación se muestra el resultado real:
select codigowine, preconormal - @price as lag_price, @price:=preconormal curr_price from precos WHERE codigowine='10088' order by timestamp;
Aquí está el violín trabajando.