Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Lt 1904 execute pending order if needed after amend #181

Open
wants to merge 952 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
952 commits
Select commit Hold shift + click to select a range
78ecb93
Merge pull request #174 from lykkecloud/BUGS-475-fixed-schedule-cache…
May 10, 2019
18a1ee3
Merge pull request #176 from lykkecloud/MTC-791-order-type-for-stp
May 10, 2019
5aa4519
Merge pull request #177 from lykkecloud/MTC-792-liquidate-without-spl…
May 10, 2019
9b4586d
Merge pull request #175 from lykkecloud/MTC-790-log-skipped-EOD-quotes
May 10, 2019
96cff1d
Released version [1.15.3]
LykkeTechAcc May 10, 2019
4e299ef
MTC-794: quotes monitor is disable by default
May 13, 2019
e4f7c95
MTC-471: do ton cancel closing position twice
May 13, 2019
d9f7683
MTC-796: correct originator of special liquidation
May 13, 2019
679e9c0
MTC-798: optimised schedule settigs update
May 15, 2019
95d7925
Merge pull request #182 from lykkecloud/MTC-798-change-aset-pairs-sch…
May 15, 2019
8154436
Merge pull request #180 from lykkecloud/MTC-471-erroneous-cancel-clos…
May 15, 2019
b80595d
Merge pull request #178 from lykkecloud/MTC-794-disable-quotes-checker
May 15, 2019
ea914de
Merge pull request #179 from lykkecloud/MTC-796-originator-for-specia…
May 15, 2019
bcdf2e8
Released version [1.15.4]
LykkeTechAcc May 15, 2019
6732cec
MTC-750: expire orders by validity depending on DayOff interval end
GSailen May 19, 2019
7325ab3
MTC-742: fix NRE
GSailen May 19, 2019
0e4873e
MTC-710: add configurable Gavel execution timeout
GSailen May 19, 2019
b3e84ca
MTC-749: changed response format
May 21, 2019
cfd0b65
Merge pull request #166 from lykkecloud/feature_MTC-743-Deduplication…
May 23, 2019
77aa764
Merge pull request #167 from lykkecloud/feature_MTC-749-Improve-Margi…
May 23, 2019
9e1cdaf
Merge pull request #168 from lykkecloud/feature_MTC-745-Force-Open-Ed…
May 23, 2019
6fa6a93
Merge pull request #169 from lykkecloud/bugfix_MTC-762-Use-DeadQueueE…
May 23, 2019
849de06
Merge branch 'master' into feature_MTC-737-OrderBook-Failover-Strategy
GSailen May 23, 2019
bafdf12
Merge branch 'master' into feature_MTC-754-Api-To-Create-Trading-Data…
GSailen May 23, 2019
cbfb28e
Merge pull request #165 from lykkecloud/feature_MTC-737-OrderBook-Fai…
May 23, 2019
6567280
Merge pull request #171 from lykkecloud/feature_MTC-754-Api-To-Create…
May 23, 2019
eed2cf0
Merge remote-tracking branch 'origin/feature_MTC-743-Deduplication-Fa…
Apr 21, 2019
2bcc16b
MTC-766: new implementation of orderbook service + benchmarks
Apr 22, 2019
3401ccf
MTC-766: use best price from event for position close price calculation
Apr 22, 2019
48341c8
MTC-766: returned rwl dict back + parallel account and order calcs
Apr 22, 2019
fd724d9
MTC-766: try to fix MM ME for parallel execution
Apr 23, 2019
3c0d2df
MTC-766: positions fpl calculation + order validation and execution o…
Apr 23, 2019
25915ff
MTC-766: removed parallel loop and asset pairs list from schedule req…
Apr 25, 2019
9ddc240
MTC-766: fixed 0 FxPrice
Apr 30, 2019
fd7de52
MTC-766: fixed rebase
May 23, 2019
3095160
MTC-766: implemented logging of skipped orderbooks in lightweight ser…
May 23, 2019
204a2eb
Merge pull request #181 from lykkecloud/MTC-766-trading-core-performance
May 23, 2019
117f4e8
MTC-758: write AdditionalInfo = LykkeConstants.LiquidationByCaAdditio…
GSailen May 25, 2019
83dd728
MTC-758: Change additional info field name to CreatedBy
GSailen May 25, 2019
834ced4
Merge pull request #183 from lykkecloud/bugfix_MTC-750-Expire-Orders-…
May 26, 2019
71a9c29
Merge pull request #184 from lykkecloud/bugfix_MTC-742-Better-Error-T…
May 26, 2019
13c4c54
Merge pull request #185 from lykkecloud/feature_MTC-710-Make-Gavel-Re…
May 26, 2019
342bf34
Released version [1.15.5]
LykkeTechAcc May 26, 2019
a07022c
LT-1447: Added TrailingDistance to related order info
orodrigueseder May 27, 2019
f1a59bd
Merge pull request #187 from lykkecloud/LT-1447-TrailingStopToRelated…
May 27, 2019
e46358a
Released version [1.15.6]
LykkeTechAcc May 27, 2019
cc58f4e
MTC-758: fix broken json constant
GSailen May 29, 2019
c9a65ea
MTC-807: Change limit order ArePendingOrdersDisabled to actual tradin…
GSailen May 30, 2019
eb5d3cc
MTC-810: fixed available margin validation
May 31, 2019
5a5cbab
MTC-811: fixed account stats update
May 31, 2019
0efc89c
MTC-810: changed logic
May 31, 2019
0727836
MTC-810: fixed pr comments
Jun 2, 2019
d110b86
MTC-818: add optional ApiKey to client generation
GSailen Jun 3, 2019
e1690cf
MTC-832: calculate trailing distance before activation event
Jun 4, 2019
799e621
Merge pull request #192 from lykkecloud/MTC-832-calculate-trailing-di…
GSailen Jun 5, 2019
8b4be6f
Released version [1.15.7]
LykkeTechAcc Jun 5, 2019
07d175b
Merge pull request #186 from lykkecloud/feature_MTC-758-CA-Liquidatio…
Jun 6, 2019
73d9677
Merge pull request #188 from lykkecloud/bugfix_MTC-807-Limit-Order-Ex…
Jun 6, 2019
3501dcb
Merge pull request #189 from lykkecloud/MTC-810-margin-validation-fix
Jun 6, 2019
9cba27c
Merge pull request #190 from lykkecloud/MTC-811-account-stats-update-fix
Jun 6, 2019
220e965
Released version [1.15.8]
LykkeTechAcc Jun 6, 2019
2dd5f67
Merge pull request #191 from lykkecloud/feature_MTC-818_Optional-ApiK…
Jun 10, 2019
22b0314
Released version [1.15.9]
LykkeTechAcc Jun 10, 2019
942cd31
MTC-838: changed validity validation
Jun 10, 2019
2ee82d7
MTC-836: optional cancel of orders linked to positions
Jun 10, 2019
57e07ec
MTC-840: on reset close remove all positions and orders, reset accoun…
GSailen Jun 11, 2019
c5aedcf
MTC-840: fix messages
GSailen Jun 11, 2019
59c89f4
MTC-840: simplify impl
GSailen Jun 12, 2019
685a8c3
MTC-840: fix silly string issue
GSailen Jun 12, 2019
f5c6544
Merge pull request #193 from lykkecloud/MTC-836-cancel-all-additional…
Jun 13, 2019
7641812
Merge pull request #194 from lykkecloud/MTC-838-fix-validity-validation
Jun 13, 2019
da66379
Released version [1.15.10]
LykkeTechAcc Jun 13, 2019
0839c85
MTC-854: fixed trailing stop price change + tests
Jul 3, 2019
ef605f5
MTC-856: changed price request resend logic
Jul 3, 2019
8c82ac9
Merge pull request #197 from lykkecloud/MTC-856-fix-spec-liquidation-…
anokhin-lkk Jul 3, 2019
a214b5a
Released version [1.15.11]
LykkeTechAcc Jul 3, 2019
c446891
MTC-857: Set OrderModel.ExchangeName field = TradeOperationInfo objec…
Jul 3, 2019
6c76890
MTC-857: todo )
Jul 3, 2019
37d1e0a
Merge pull request #198 from lykkecloud/MTC-857-extend-spec-liquidati…
anokhin-lkk Jul 3, 2019
43e123b
Released version [1.15.12]
LykkeTechAcc Jul 3, 2019
0e18c99
MTC-858: handle failed execution result
Jul 3, 2019
61a177a
MTC-854: prevent self-update of the trailing distance
Jul 4, 2019
1fd588f
MTC-858: added correct modality
Jul 4, 2019
b31266d
Merge pull request #199 from lykkecloud/MTC-858-handle-order-reject-i…
anokhin-lkk Jul 4, 2019
94cf82e
Merge pull request #196 from lykkecloud/MTC-854-ts-price-change-fix
anokhin-lkk Jul 4, 2019
9dd3793
Released version [1.15.13]
LykkeTechAcc Jul 4, 2019
2826b35
MTC-860: continue special liquidation workflow if external order was …
Jul 8, 2019
e6889b7
Merge pull request #195 from lykkecloud/bugfix_MTC-840-Erase-Account-…
anokhin-lkk Jul 8, 2019
d245c94
Merge pull request #200 from lykkecloud/MTC-860-fix-special-liquidati…
anokhin-lkk Jul 8, 2019
2aa605f
LT-1541: licence and copyrights
Jul 8, 2019
6e9fc63
LT-1541: added missed line
Jul 8, 2019
71d6d3f
Merge pull request #201 from lykkecloud/LT-1541-licence
anokhin-lkk Jul 8, 2019
3511750
Released version [1.16.0]
LykkeTechAcc Jul 8, 2019
7760f10
MTC-865: EOD quote should not change isSuspended status of the instru…
Jul 17, 2019
7ff725d
MTC-867: fixed schedule cache update job
Jul 17, 2019
84b9f43
Merge pull request #202 from lykkecloud/MTC-865-EOD-quote-should-not-…
anokhin-lkk Jul 17, 2019
a2310c8
Merge pull request #203 from lykkecloud/MTC-867-fix-schedule-cache-up…
anokhin-lkk Jul 17, 2019
4852392
Released version [1.16.1]
LykkeTechAcc Jul 17, 2019
ca16e85
LT-1571: on service startup history merging was causing reflection ex…
GSailen Jul 30, 2019
13bc548
Merge pull request #204 from lykkecloud/bugfix_LT-1571-History-Mergin…
GSailen Jul 30, 2019
ed53077
Released version [1.16.2]
LykkeTechAcc Jul 30, 2019
56c3af2
LT-1577: updated RabbitMq package + used in-memory queue persistence …
Aug 10, 2019
62824a5
LT-1600: recalculate used margin on multiplier status change
Aug 10, 2019
7094ec7
Merge pull request #205 from lykkecloud/LT-1600-recalculate-margin-at…
anokhin-lkk Aug 11, 2019
475f5c1
Released version [1.16.3]
LykkeTechAcc Aug 11, 2019
602d872
LT-1577: fixes after review
Aug 12, 2019
26d7ed8
Merge pull request #206 from lykkecloud/LT-1577-update-rabbitmq-package
anokhin-lkk Aug 12, 2019
f7675c6
Released version [1.16.4]
LykkeTechAcc Aug 12, 2019
50fed2a
LT-1607: EOD commands handler for making async trading data snapshot
GSailen Aug 18, 2019
138cee2
LT-1603: improved fake exchange connector (for Demo mode)
Aug 18, 2019
bb98df2
LT-1603: added logs and increased command timeout
Aug 20, 2019
fff8112
LT-1607: add snapshot insert command timeout, logs
GSailen Aug 20, 2019
2e05635
LT-1603: implemented changes for special liquidation
Aug 21, 2019
3081794
LT-1604: refactoring of position state change during the close process
Aug 23, 2019
d9fae8f
LT-1604: close position using special liquidation in case of no liqui…
Aug 25, 2019
553538c
LT-1604: refactoring of positions group close
Aug 25, 2019
842bd11
LT-1604: fixed special liquidation
Aug 25, 2019
0c5d13e
LT-1607: review fixes
GSailen Aug 28, 2019
2458181
Merge pull request #208 from lykkecloud/bugfix_LT-1607-Async-Snapshot…
GSailen Aug 28, 2019
07d49b6
LT-1607: fix tests
GSailen Aug 28, 2019
807e5ed
Merge pull request #210 from lykkecloud/bugfix_LT-1607-Async-Snapshot…
GSailen Aug 28, 2019
035a7b6
Released version [1.16.5]
LykkeTechAcc Aug 28, 2019
0404dea
Merge pull request #207 from lykkecloud/LT-1603-improve-fake-exchange…
anokhin-lkk Sep 2, 2019
fdea654
LT-1604: fixes after review
Sep 2, 2019
5fb2caa
Merge pull request #209 from lykkecloud/LT-1604-ability-to-close-posi…
anokhin-lkk Sep 3, 2019
14601ad
Released version [1.16.6]
LykkeTechAcc Sep 3, 2019
b53a4f0
LT-1618: restart failed liquidations on trading started
Sep 3, 2019
b78ce2a
LT-1618: fixed comment
Sep 3, 2019
c6120b6
Merge pull request #211 from lykkecloud/LT-1618-restart-liquidation-o…
anokhin-lkk Sep 3, 2019
6fb6669
Released version [1.16.7]
LykkeTechAcc Sep 3, 2019
9d799e4
LT-1625: Remove operationExecutionInfo from Trading Engine in order t…
GSailen Sep 8, 2019
620168e
LT-1628: .net core version updated 2.1 => 2.2 + make Gavel calls with…
GSailen Sep 12, 2019
6ef0828
LT-1628: fixes after review
GSailen Sep 13, 2019
0190d1f
LT-1628: move exchangeConnector contracts to contract project + updat…
GSailen Sep 13, 2019
6f74738
LT-1628: fix tests
GSailen Sep 13, 2019
35d88ea
Merge pull request #213 from lykkecloud/bugfix_LT-1628-App-Crash
anokhin-lkk Sep 13, 2019
3b1608a
Released version [1.16.8]
LykkeTechAcc Sep 13, 2019
2b1c866
LT-1633: Add HasOnBehalf field to the Order + contract
GSailen Sep 14, 2019
1295bf6
LT-1633: remove appsettings.dev.json
GSailen Sep 14, 2019
76ffdab
Merge pull request #214 from lykkecloud/bugfix_LT-1633-Order-HasOnBeh…
GSailen Sep 16, 2019
9ccda40
Released version [1.16.9]
LykkeTechAcc Sep 16, 2019
d77b718
Released version [1.16.10]
LykkeTechAcc Sep 16, 2019
0b00944
LT-1646: added IsCancellationTrade flag to external order request
Sep 19, 2019
68d4dcf
LT-1655: used chaos kitty for the ability to fail fake special liquid…
Sep 20, 2019
ae816c3
LT-1657: remove apikey from logs
GSailen Sep 22, 2019
e8d57bc
LT-1630: check liquidation volume considering direction
Sep 24, 2019
842ed0c
Merge pull request #215 from lykkecloud/bugfix_LT-1657-Hide-ApiKey-Fr…
anokhin-lkk Sep 24, 2019
a066bce
Released version [1.16.11]
LykkeTechAcc Sep 25, 2019
ef78061
Merge pull request #212 from lykkecloud/bugfix_LT-1625-Remove-ExecInf…
GSailen Sep 26, 2019
384d951
Released version [1.16.12]
LykkeTechAcc Sep 26, 2019
c1d573d
Merge pull request #216 from lykkecloud/LT-1646-use-IsCancellationTra…
anokhin-lkk Sep 26, 2019
75bc41a
Merge pull request #217 from lykkecloud/LT-1630-fix-liquidation-valid…
anokhin-lkk Sep 26, 2019
e1d443d
Merge pull request #218 from lykkecloud/LT-1655-improve-fake-special-…
anokhin-lkk Sep 26, 2019
0783445
Released version [1.16.13]
LykkeTechAcc Sep 26, 2019
593b73c
LT-1683: partial position close pnl fix
Oct 2, 2019
3bed37f
LT-1684: fixed schedule settings lock
Oct 2, 2019
c64bf49
LT-1683: removed rounding fix
Oct 6, 2019
c7832fa
Merge pull request #220 from lykkecloud/LT-1683-partial-close-pnl-fix
anokhin-lkk Oct 6, 2019
4ca8ded
Merge pull request #219 from lykkecloud/LT-1684-fix-schedule-settings…
anokhin-lkk Oct 6, 2019
f6e39d9
Released version [1.16.14]
LykkeTechAcc Oct 6, 2019
1ed7738
LT-1639: send changed event with WithOnBehalfFees=false for limit ord…
GSailen Oct 12, 2019
f2d3c61
LT-1693: EOD snapshot data preparation separated, more logs added
GSailen Oct 12, 2019
fe1a55c
LT-1713: add position status to api output
GSailen Oct 12, 2019
e006fcc
Merge pull request #222 from lykkecloud/bugfix_LT-1693-Eod-Snapshot-C…
anokhin-lkk Oct 15, 2019
fec4238
Merge pull request #221 from lykkecloud/bugfix_LT-1639-Double-OnBehal…
anokhin-lkk Oct 16, 2019
020e835
Merge pull request #223 from lykkecloud/feature_LT-1713-Expose-Positi…
anokhin-lkk Oct 16, 2019
3382de9
Released version [1.16.15]
LykkeTechAcc Oct 16, 2019
f3dc0a2
LT-1696: [EOD] Fixings sent but not taken into account
vashetsin Oct 22, 2019
7ce02d2
LT-1696: update warm up logic
vashetsin Oct 23, 2019
95b416e
LT-1696: fixing loc issue for UpdateSettingsAsync method
vashetsin Oct 25, 2019
140b9b9
LT-1753: send ExternalOrderId of the original trade to Gavel for canc…
GSailen Oct 26, 2019
ee7e003
LT-1753: rename field to CancellationTradeExternalId
GSailen Oct 26, 2019
ef35887
Merge pull request #228 from lykkecloud/LT-1696-fix-trading-schedule
anokhin-lkk Oct 28, 2019
dcaae31
Merge pull request #227 from lykkecloud/feature_LT-1753-Send-External…
anokhin-lkk Oct 28, 2019
0993582
Released version [1.16.17]
LykkeTechAcc Oct 28, 2019
892ca04
LT-1781: Recursive upgradeable lock acquisitions in MT Core
vashetsin Oct 30, 2019
10285fc
LT-1786: Smart capital figures update: Balance is not updated on comm…
vashetsin Nov 4, 2019
137e350
LT-1804: [Logs Improvement] - Trading Core: validation errors
vashetsin Nov 11, 2019
7baa87b
LT-1805: [Logs Improvement] - Trading Core : order reject
vashetsin Nov 11, 2019
0db62fc
LT-1802: [Logs Improvement] Trading Core : application stop message
vashetsin Nov 11, 2019
c6cffa2
LT-1802: fix pass params fo log info
vashetsin Nov 11, 2019
3646e67
LT-1802: updates
vashetsin Nov 12, 2019
17f5f0c
LT-1802: updates2
vashetsin Nov 12, 2019
aa6decb
LT-1804: add statuses
vashetsin Nov 13, 2019
9c10f6f
LT-1790: fix calling account api infinitely
vashetsin Nov 13, 2019
f490dfa
LT-1790: fix build error
vashetsin Nov 13, 2019
2b42708
Merge pull request #232 from lykkecloud/LT-1805-log-improvements
anokhin-lkk Nov 15, 2019
0f8196c
Merge pull request #231 from lykkecloud/LT-1804-Logs-Improvement
anokhin-lkk Nov 15, 2019
ba4b94c
Merge pull request #230 from lykkecloud/LT-1790-add-LastBalanceChange…
anokhin-lkk Nov 15, 2019
d82068d
LT-1802: fix
vashetsin Nov 15, 2019
c74825d
LT-1802: fix deploy
vashetsin Nov 15, 2019
0ac1030
Released version [1.16.18]
LykkeTechAcc Nov 15, 2019
9413131
Merge pull request #233 from lykkecloud/LT-1802-logs-improvements
anokhin-lkk Nov 15, 2019
9333f90
Released version [1.16.19]
LykkeTechAcc Nov 15, 2019
2ab5968
LT-1822: put order AdditionalInfo into PositionHistoryEvent
GSailen Nov 22, 2019
dacda19
Merge pull request #229 from lykkecloud/LT-1781-fix-LockRecursionExce…
GSailen Nov 23, 2019
6db6f89
Released version [1.16.20]
LykkeTechAcc Nov 23, 2019
267a50a
Merge pull request #234 from lykkecloud/bugfix_LT-1822-Cancellation-O…
GSailen Nov 25, 2019
56ccd99
Released version [1.16.21]
LykkeTechAcc Nov 25, 2019
15e2b6c
LT-1820: order books validation settings
Nov 29, 2019
2c5f70e
LT-1820: added validation settings for FX
Dec 1, 2019
bdccb08
LT-1850: fixed account fpl updates on balance updates
Dec 1, 2019
d4684d9
Merge pull request #236 from lykkecloud/LT-1820-quotes-validations
anokhin-lkk Dec 4, 2019
5f4f17e
Merge pull request #237 from lykkecloud/LT-1850-fix-account-fpl-updates
anokhin-lkk Dec 4, 2019
b76f318
Released version [1.16.22]
LykkeTechAcc Dec 4, 2019
819d66a
LT-1861: Many crashes of MTCore
vashetsin Dec 6, 2019
0332124
LT-1859: Market update status basic impl
GSailen Dec 9, 2019
0e06db8
LT-1859: some fixes + 2 apis
GSailen Dec 9, 2019
f6ca787
LT-1859: + EventTimestamp
GSailen Dec 9, 2019
7e11f2f
LT-1859: remove fatal
GSailen Dec 9, 2019
ec7dd2a
LT-1859: tests
GSailen Dec 10, 2019
5cd71ef
LT-1859: pr fixes
GSailen Dec 11, 2019
bd8bfd2
LT-1859: fix schedule planning not invoked on schedule change
GSailen Dec 11, 2019
dc5084d
LT-1859: simplify TryGetClosestPoint
GSailen Dec 11, 2019
e6bb3a4
LT-1859: fix api
GSailen Dec 13, 2019
4de4a6f
LT-1859: fix multiple market statuses
GSailen Dec 15, 2019
8d96e3a
Merge pull request #239 from lykkecloud/LT-1859-Market-Update-Status
GSailen Dec 16, 2019
0c0680a
LT-1861: fix logging
vashetsin Dec 16, 2019
fca5128
Released version [1.16.23]
LykkeTechAcc Dec 16, 2019
f430b12
LT-1862: readme
vashetsin Dec 16, 2019
3b945f4
LT-1880: mark EOD quote with a flag
GSailen Dec 16, 2019
898ddda
LT-1890: Total capital not updated until next cash movement
vashetsin Dec 18, 2019
a728af6
Merge pull request #240 from lykkecloud/LT-1880-Mark-EOD-quote
anokhin-lkk Dec 19, 2019
5a7bedc
Merge pull request #241 from lykkecloud/LT-1890-fix-reset-balance
anokhin-lkk Dec 19, 2019
5bb8595
Released version [1.16.24]
LykkeTechAcc Dec 19, 2019
79f69eb
LT-1897: CR. Delete LiquidationThresholdQty and related checks
vashetsin Dec 19, 2019
51af690
LT-1900: update account nuget
GSailen Dec 20, 2019
0631ac5
Merge pull request #244 from lykkecloud/LT-1900-Update-Accounts-Nuget
GSailen Dec 22, 2019
f5ddd33
Released version [1.16.25]
LykkeTechAcc Dec 22, 2019
24e9015
Merge pull request #242 from lykkecloud/LT-1897-delete-LiquidationThr…
anokhin-lkk Dec 23, 2019
f8a3247
LT-1861: fix PR
vashetsin Dec 23, 2019
026f8ea
improve sql
vashetsin Dec 23, 2019
5d0c885
LT-1861: webhost logger
vashetsin Dec 23, 2019
d7bc72f
cover ScheduleNext with a lock + log all schedules
GSailen Dec 23, 2019
c6bbdc0
LT-1861: replace console logs to ILog
vashetsin Dec 23, 2019
7d7ec5a
fix $@ for agents .net core 2.2
GSailen Dec 23, 2019
78a8ee3
Merge branch 'master' into LT-1861-improve-GetLastSnapshot-query
vashetsin Dec 23, 2019
16f762f
Merge pull request #238 from lykkecloud/LT-1861-improve-GetLastSnapsh…
anokhin-lkk Dec 23, 2019
5a082a9
Released version [1.16.26]
LykkeTechAcc Dec 23, 2019
1b90360
LT-1907: try remove job before add
Dec 23, 2019
2721be6
LT-1854: MT: use new WebHostLoggerFactory
vashetsin Dec 23, 2019
8f547fa
Merge pull request #245 from lykkecloud/LT-1907-Fix-Scheduler-With-Mo…
anokhin-lkk Dec 23, 2019
50d7aac
Released version [1.16.27]
LykkeTechAcc Dec 23, 2019
a47ad17
Merge pull request #246 from lykkecloud/LT-1854-WebHostLogger
anokhin-lkk Dec 24, 2019
90c1137
Released version [1.16.28]
LykkeTechAcc Dec 24, 2019
ce2b327
Fixed build
Dec 24, 2019
ad073e8
Released version [1.16.29]
LykkeTechAcc Dec 24, 2019
2a4dccb
LT-1904: Limit order executed at next quote after edited
vashetsin Dec 26, 2019
1dd5c4a
LT-1904: fixed build
Dec 27, 2019
3dc4c5b
LT-1904: fix unit tests
vashetsin Dec 27, 2019
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,9 @@ _NCrunch_*
.vs
node_modules
**/launchSettings.json
**/appsettings.json
**/appsettings.*.json
!**/appsettings.Serilog.json
**/docker-compose.dev.yml
**/marginTradingSettings.json
**/*.ps1
Expand Down
19 changes: 19 additions & 0 deletions BenchmarkRunner/BenchmarkRunner.csproj
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp2.2</TargetFramework>
<RootNamespace>ExternalOrderbooksBenchmark</RootNamespace>
</PropertyGroup>

<ItemGroup>
<ProjectReference Include="..\BenchmarkScenarios\BenchmarkScenarios.csproj" />
<ProjectReference Include="..\src\MarginTrading.Backend.Services\MarginTrading.Backend.Services.csproj" />
<ProjectReference Include="..\src\MarginTrading.Common\MarginTrading.Common.csproj" />
</ItemGroup>

<ItemGroup>
<PackageReference Include="BenchmarkDotNet" Version="0.11.5" />
</ItemGroup>

</Project>
17 changes: 17 additions & 0 deletions BenchmarkRunner/Program.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
// Copyright (c) 2019 Lykke Corp.
// See the LICENSE file in the project root for more information.

using BenchmarkDotNet.Running;
using BenchmarkScenarios;

namespace ExternalOrderbooksBenchmark
{
class Program
{
static void Main(string[] args)
{
//var summary = BenchmarkRunner.Run<ConcurrentDictionaryVsReadWriteLockedDictionary>();
var summary = BenchmarkRunner.Run<ExternalOrderbookServicesBenchmark>();
}
}
}
17 changes: 17 additions & 0 deletions BenchmarkScenarios/BenchmarkScenarios.csproj
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>netcoreapp2.2</TargetFramework>
</PropertyGroup>

<ItemGroup>
<ProjectReference Include="..\src\MarginTrading.Backend.Services\MarginTrading.Backend.Services.csproj" />
<ProjectReference Include="..\src\MarginTrading.Common\MarginTrading.Common.csproj" />
</ItemGroup>

<ItemGroup>
<PackageReference Include="BenchmarkDotNet" Version="0.11.5" />
<PackageReference Include="Moq" Version="4.10.1" />
</ItemGroup>

</Project>
Original file line number Diff line number Diff line change
@@ -0,0 +1,112 @@
// Copyright (c) 2019 Lykke Corp.
// See the LICENSE file in the project root for more information.

using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using BenchmarkDotNet.Attributes;
using MarginTrading.Backend.Core.Orderbooks;
using MarginTrading.Common.Helpers;

namespace BenchmarkScenarios
{
[CoreJob]
[RPlotExporter, RankColumn]
public class ConcurrentDictionaryVsReadWriteLockedDictionaryBenchmark
{
private static readonly ReadWriteLockedDictionary<string, Dictionary<string, ExternalOrderBook>> RwlDictionary =
new ReadWriteLockedDictionary<string, Dictionary<string, ExternalOrderBook>>();

private static readonly ConcurrentDictionary<string, Dictionary<string, ExternalOrderBook>> ConcurDictionary =
new ConcurrentDictionary<string, Dictionary<string, ExternalOrderBook>>();

private static readonly ExternalOrderBook OrderBook = new ExternalOrderBook(
"test",
"test",
DateTime.Now,
new [] {new VolumePrice() {Price = 1, Volume = 1}},
new [] {new VolumePrice() {Price = 1, Volume = 1}}
);

private static readonly Action RwlActionAdd = () =>
{
RwlDictionary.AddOrUpdate("test",
k => UpdateOrderbooksDictionary(k, new Dictionary<string, ExternalOrderBook>()),
UpdateOrderbooksDictionary);
};

private static readonly Action RwlActionGet = () =>
{
RwlDictionary.TryReadValue("test", (dataExist, assetPair, orderbooks)
=> dataExist ? DoSomeJob(orderbooks) : null);
};

private static readonly Action ConcurActionAdd = () =>
{
ConcurDictionary.AddOrUpdate("test",
k => UpdateOrderbooksDictionary(k, new Dictionary<string, ExternalOrderBook>()),
UpdateOrderbooksDictionary);
};

private static readonly Action ConcurActionGet = () =>
{
if (ConcurDictionary.TryGetValue("test", out var orderbooks))
{
DoSomeJob(orderbooks);
}
};

private readonly List<Action> _rwlDictionaryActions = new List<Action>
{
RwlActionAdd,
RwlActionGet,
RwlActionGet,
RwlActionGet,
RwlActionGet,
};

private readonly List<Action> _concurDictionaryActions = new List<Action>
{
ConcurActionAdd,
ConcurActionGet,
ConcurActionGet,
ConcurActionGet,
ConcurActionGet,
};

private static decimal? DoSomeJob(Dictionary<string, ExternalOrderBook> orderbooks)
{
return !orderbooks.TryGetValue("test", out var orderBook)
? null
: orderBook.Asks.FirstOrDefault()?.Price;
}

private static Dictionary<string, ExternalOrderBook> UpdateOrderbooksDictionary(string assetPairId,
Dictionary<string, ExternalOrderBook> dict)
{
dict[OrderBook.ExchangeName] = OrderBook;

return dict;
}

[Benchmark]
public void RwlDictionaryTest()
{
foreach (var action in _rwlDictionaryActions)
{
Task.Factory.StartNew(action);
}
}

[Benchmark]
public void ConcurDictionaryTest()
{
foreach (var action in _concurDictionaryActions)
{
Task.Factory.StartNew(action);
}
}
}
}
106 changes: 106 additions & 0 deletions BenchmarkScenarios/ExternalOrderbookServicesBenchmark.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,106 @@
// Copyright (c) 2019 Lykke Corp.
// See the LICENSE file in the project root for more information.

using System;
using System.Collections.Generic;
using BenchmarkDotNet.Attributes;
using Common.Log;
using Lykke.MarginTrading.OrderBookService.Contracts;
using MarginTrading.Backend.Core;
using MarginTrading.Backend.Core.Orderbooks;
using MarginTrading.Backend.Core.Repositories;
using MarginTrading.Backend.Core.Settings;
using MarginTrading.Backend.Services.AssetPairs;
using MarginTrading.Backend.Services.Events;
using MarginTrading.Backend.Services.Infrastructure;
using MarginTrading.Backend.Services.Stp;
using MarginTrading.Common.Services;
using Moq;

namespace BenchmarkScenarios
{
[CoreJob]
[RPlotExporter, RankColumn]
public class ExternalOrderbookServicesBenchmark
{
private ExternalOrderbookService _service;

private LightweightExternalOrderbookService _lightweightService;

public ExternalOrderbookServicesBenchmark()
{
var doMock = new Mock<IAssetPairDayOffService>();
doMock.Setup(a => a.IsDayOff(It.IsAny<string>())).Returns(true);

_service = new ExternalOrderbookService(
Mock.Of<IEventChannel<BestPriceChangeEventArgs>>(),
Mock.Of<IOrderBookProviderApi>(),
Mock.Of<IDateService>(),
Mock.Of<IConvertService>(),
doMock.Object,
Mock.Of<ScheduleSettingsCacheService>(),
Mock.Of<IAssetPairsCache>(),
Mock.Of<ICqrsSender>(),
Mock.Of<IIdentityGenerator>(),
Mock.Of<ILog>(),
new MarginTradingSettings() {DefaultExternalExchangeId = "test"});

_lightweightService = new LightweightExternalOrderbookService(
Mock.Of<IEventChannel<BestPriceChangeEventArgs>>(),
Mock.Of<IOrderBookProviderApi>(),
Mock.Of<IDateService>(),
Mock.Of<IConvertService>(),
Mock.Of<IScheduleSettingsCacheService>(),
doMock.Object,
Mock.Of<IAssetPairsCache>(),
Mock.Of<ICqrsSender>(),
Mock.Of<IIdentityGenerator>(),
Mock.Of<ILog>(),
new MarginTradingSettings() {DefaultExternalExchangeId = "test"});
}

private static readonly ExternalOrderBook OrderBook = new ExternalOrderBook(
"test",
"test",
DateTime.Now,
new []
{
new VolumePrice {Price = 1, Volume = 1},
new VolumePrice {Price = 1, Volume = 1},
new VolumePrice {Price = 1, Volume = 1},
new VolumePrice {Price = 1, Volume = 1},
new VolumePrice {Price = 1, Volume = 1},
new VolumePrice {Price = 1, Volume = 1},
new VolumePrice {Price = 1, Volume = 1},
new VolumePrice {Price = 1, Volume = 1},
new VolumePrice {Price = 1, Volume = 1},
new VolumePrice {Price = 1, Volume = 1}
},
new []
{
new VolumePrice {Price = 1, Volume = 1},
new VolumePrice {Price = 1, Volume = 1},
new VolumePrice {Price = 1, Volume = 1},
new VolumePrice {Price = 1, Volume = 1},
new VolumePrice {Price = 1, Volume = 1},
new VolumePrice {Price = 1, Volume = 1},
new VolumePrice {Price = 1, Volume = 1},
new VolumePrice {Price = 1, Volume = 1},
new VolumePrice {Price = 1, Volume = 1},
new VolumePrice {Price = 1, Volume = 1},
}
);

[Benchmark]
public void Default()
{
_service.SetOrderbook(OrderBook);
}

[Benchmark]
public void Lightweight()
{
_lightweightService.SetOrderbook(OrderBook);
}
}
}
11 changes: 3 additions & 8 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -1,18 +1,13 @@
MIT License

Copyright (c) 2017
Copyright (c) 2019 Lykke Corp.

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
of this software and associated documentation files (the Software), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
Expand Down
Loading