Вы можете использовать условную агрегацию:
select account, year,
sum(case when trans = 'bought' then amt
when trans = 'sold' then - amt
else 0
end) as diff
from t
group by account, year;
Если вы хотите, чтобы это было только для одной учетной записи, вы можете добавить предложение where
:
select account, year,
sum(case when trans = 'bought' then amt
when trans = 'sold' then - amt
else 0
end) as diff
from t
where account = 111 and year = 2019
group by account, year;