From 1f8783eeca262b047dfd23ac69e894de9eac1049 Mon Sep 17 00:00:00 2001 From: Denis Tereshkin Date: Sun, 29 Oct 2023 11:49:35 +0700 Subject: [PATCH] fix trade volume calculation --- src/TXMLConnector/Internal.hs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/TXMLConnector/Internal.hs b/src/TXMLConnector/Internal.hs index 878bb49..3444202 100644 --- a/src/TXMLConnector/Internal.hs +++ b/src/TXMLConnector/Internal.hs @@ -317,7 +317,7 @@ handleTransaqData transaqData = do fromTransaqTrade transaqTrade order maybeTickerInfo = let vol = case maybeTickerInfo of - Just tickerInfo -> tPrice transaqTrade / tiTickSize tickerInfo * tiTickPrice tickerInfo + Just tickerInfo -> fromIntegral (tQuantity transaqTrade) * tPrice transaqTrade / tiTickSize tickerInfo * tiTickPrice tickerInfo Nothing -> tPrice transaqTrade in Trade { @@ -655,7 +655,7 @@ securityToTickerInfo sec = tiTicker = sBoard sec <> "#" <> sSeccode sec , tiLotSize = sLotSize sec , tiTickSize = sMinStep sec - , tiTickPrice = sPointCost sec + , tiTickPrice = sPointCost sec * sMinStep sec * (10 ^ sDecimals sec) / 100 } parseSecurityId :: TickerId -> Maybe SecurityId