Compare commits

..
3261 Commits
Author SHA1 Message Date
Kevin Darby 5330000e12 Brian tested manually
Merged in ui_permissions (pull request #82)

Ui permissions

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-10-22 19:36:27 +00:00
Kevin Darby 1d51a063ea adding manual test 2018-10-22 15:24:35 -04:00
Kevin Darby da3dc9f477 digesting Eric's PR comments 2018-10-22 14:11:46 -04:00
Eric Harding f437d50041 Merged in leak2 (pull request #84)
Leak2

Approved-by: Jake Norbut <jake.norbut@bluetradesys.com>
Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-10-19 14:58:28 +00:00
Eric Harding c7bbcc1738 Update release notes 2018-10-19 10:33:30 -04:00
Eric Harding 3bdde95b42 Update release notes 2018-10-19 09:35:36 -04:00
Eric Harding 52e6be5d60 Merge branch 'prod' of bitbucket.org:bluetradesys/spark into leak2 2018-10-19 09:24:25 -04:00
Eric Harding bda76d0234 Reduce logging allocations for windows client 2018-10-19 09:11:59 -04:00
Eric Harding 7cb08ba90a Improve cleanup by releaseing references from Finalizeable handles. 2018-10-18 16:50:04 -04:00
Eric Harding ee6d05c737 Fix 2 potential NullReference in DIYGrid when DataContext goes to null 2018-10-18 16:49:29 -04:00
Eric Harding 62a5ee94e8 Add EnumerateGroup to SortedTree 2018-10-18 11:08:19 -04:00
Eric Harding f6e12d1664 Move SortedTreeTests to bts_tests 2018-10-18 10:43:10 -04:00
Eric Harding d022080b80 Leak: Fix WPF binding leaks in OrderBook 2018-10-17 17:44:47 -04:00
Pedro Pinto 44acb1caac Added 1.3.3 release notes. 2018-10-17 20:48:31 +00:00
Pedro Pinto 28347f1074 Updated release notes. 2018-10-17 20:47:53 +00:00
Pedro Pinto 7826a1d0b4 Merge branch 'prod' of bitbucket.org:bluetradesys/spark into prod 2018-10-17 20:46:41 +00:00
Pedro Pinto 975edb48df Reduced server memory usage. 2018-10-17 20:46:20 +00:00
Eric Harding c2a5c278e9 Increase parallelism in workspace loading. 2018-10-17 13:08:33 -04:00
John Colvin f895e69aa9 get rid of misleading constructor in viewmodelbase (signature has default-initialization for some unused arguments) 2018-10-17 11:01:08 -05:00
Eric Harding 7c050a9e10 Add log warning on order book reset 2018-10-17 10:28:08 -04:00
John Colvin 38087d21d8 Leak(orderbook) - comment out PredicateAnimator in OrderBookRowVM 2018-10-16 22:41:28 -05:00
John Colvin 4b2e49c4aa Leak(orderbook) - make cell-stores lazy 2018-10-16 22:23:36 -05:00
John Colvin e31c0a8112 Leak (orderbook) - disable cell animations 2018-10-16 21:18:11 -05:00
John Colvin 876d6e0981 OrderBookVM - change orders subscription from LegacyTableUpdate to TableUpdate 2018-10-16 16:40:08 -05:00
Eric Harding cb2dac6126 Add release notes for 1.3.2 2018-10-16 16:13:48 -04:00
Eric Harding a3cc1c652f Merged in dripdrip (pull request #83)
Dripdrip

Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-10-16 18:50:07 +00:00
Pedro Pinto 7ab6fd273e Added buffering to mercury queues.
We were dropping events on Dan's system when the queue filled up.
2018-10-16 15:32:54 +00:00
Eric Harding 7d47361446 Leak: Should unsubscribe from settings (eventually) 2018-10-15 17:36:08 -04:00
Eric Harding 9a95b5ed34 Leak: SparkWindowView should depend on commands only 2018-10-15 17:36:08 -04:00
Eric Harding 0070c1f1cc Leak: Break ShellWindowVM circular relationship with model 2018-10-15 17:36:08 -04:00
Eric Harding cd4664a012 Leak: WindowManager clear last opened window from bus 2018-10-15 17:36:08 -04:00
Eric Harding b1b8d79706 Leak: FloatingWindow should unsubscribe from ViewModel.Closing 2018-10-15 17:36:08 -04:00
John Colvin 002832a87d OrderBookVM - dispose orders_securities_subject for good measure 2018-10-15 13:50:25 -05:00
John Colvin 958212ea0c OrderBook - 'BranchFilterSource' subscriptions weren't getting disposed 2018-10-15 13:41:40 -05:00
Pedro Pinto 0013d529da Reduce log spamming further. 2018-10-15 17:33:40 +00:00
Eric Harding 23f8d0bbbb Freeze all icons in icons.cs 2018-10-15 11:26:01 -04:00
Pedro Pinto 3c72760a3f Update release notes. 2018-10-15 14:42:43 +00:00
Pedro Pinto 8844f60cd0 Reduced log spamming in order manager. 2018-10-15 14:38:44 +00:00
Pedro Pinto 62e01e43e2 Merge branch 'prod' of bitbucket.org:bluetradesys/spark into prod 2018-10-14 18:29:00 -04:00
Pedro Pinto 7953cc1209 Docker ptr 2018-10-14 18:28:56 -04:00
Eric Harding 67227320c9 ShellThreadFactory should not keep strong refrences to all windows. 2018-10-12 15:24:53 -04:00
John Colvin 5dd2c14fba mview - dispose security subscription 2018-10-11 15:26:14 -05:00
Pedro Pinto dcf116fe82 Updated release notes. 2018-10-11 18:28:10 +00:00
Pedro Pinto 9c571cc16d Moved externals pointer 2018-10-11 17:53:00 +00:00
Pedro Pinto aa8e32ee43 Updated external subrepos 2018-10-11 17:43:39 +00:00
Michael Harding 4d0a793ecc SPARK-1773: rows in table 2018-10-11 11:44:30 -04:00
Michael Harding 659bf6b208 SPARK-1773: update paths 2018-10-11 09:36:19 -04:00
Pedro Pinto 33312a4bf8 Fixed up build with respect to the perf_trace web page. 2018-10-11 12:46:12 +00:00
Pedro Pinto 929a93b1f7 Updated docker 2018-10-11 12:11:00 +00:00
Pedro Pinto f49e41c5c0 Fixed a few bugs in perf state json generation. 2018-10-11 12:11:00 +00:00
Michael Harding 87f99d42bf SPARK-1773: Add Histogram and rows 2018-10-10 16:13:29 -04:00
Michael Harding e4f5531855 Add perf_trace page 2018-10-09 17:43:42 -04:00
Kevin Darby ae2712c9ac added Filter primitive to support changing predicates via IObservable<Func<T, bool>> 2018-10-09 17:14:01 -04:00
Pedro Pinto d62bde8158 Added placeholder for perf trace web page. 2018-10-09 20:28:56 +00:00
Pedro Pinto 53ea5ddf81 Merged 2018-10-09 19:27:54 +00:00
Pedro Pinto 9e0b95a1ad SPARK-1772, Serving perf traces via json 2018-10-09 17:43:18 +00:00
Pedro Pinto 5325c372ba Added a few docs 2018-10-08 19:08:49 +00:00
Kevin Darby c3f4183531 switching dirs 2018-10-08 11:20:16 -04:00
Kevin Darby 6de5416394 over to taha 2018-10-08 10:38:22 -04:00
Taha Afzal 1a947097a5 Wrapper around AdminModel with helper functions 2018-10-08 10:31:56 -04:00
Pedro Pinto 50abbd6aea Added a few more benchmarks. 2018-10-08 14:11:26 +00:00
Pedro Pinto f324504df1 Added locking to perf trace log. 2018-10-08 14:10:56 +00:00
Pedro Pinto 931d5dad01 SPARK-1771, Logging perf metrics in a DB 2018-10-05 20:08:45 -04:00
Pedro Pinto ef094b891a SPARK-1771, Logging perf metrics in a DB 2018-10-05 23:05:27 +00:00
Pedro Pinto d25d91038d clang format. 2018-10-05 15:37:44 +00:00
Pedro Pinto 700f1d97fd Renamed TickToOrderCorID.h to PerfTrace.h 2018-10-05 15:37:09 +00:00
Michael Harding 5b1cf890e8 Merged in spark1538-risk-admin-cloning (pull request #79)
SPARK-1538: Spark Admin - Cloning

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-10-04 19:30:19 +00:00
Michael Harding c254248886 SPARK-1538: Clones incoming 2018-10-04 15:00:33 -04:00
Pedro Pinto 5aaa5a3360 Ran clang-format 2018-10-04 10:13:29 -04:00
Pedro Pinto 54d31c345a Logged non-routable orders at Error level. 2018-10-03 19:23:09 +00:00
Pedro Pinto ae3e721f62 Changed MDP3 producer to honor new thread configuration. 2018-10-03 15:45:29 +00:00
Pedro Pinto 0833dce43d Added some tools to quickly analyze latency stats. 2018-10-03 14:53:36 +00:00
Pedro Pinto 47b2e917c1 Tweaked threading defaults. 2018-10-02 16:30:56 +00:00
Pedro Pinto c2864d1715 Improved performance. 2018-10-02 16:24:00 +00:00
Pedro Pinto 2769de6f7e Added central control of threading. 2018-10-02 16:24:00 +00:00
Pedro Pinto ef3b39361a Cleaning up mercury. 2018-10-02 16:24:00 +00:00
Pedro Pinto fa2a2e2107 Rewrite of mercury for better performance. 2018-10-02 16:24:00 +00:00
Pedro Pinto 3005dfdc0f Perf analysys script tweak. 2018-10-02 16:22:04 +00:00
Pedro Pinto 4fd8d9dc5b Fixed typo in comment. 2018-10-02 16:22:04 +00:00
Pedro Pinto c948b981cf More performance tracing work. 2018-10-02 16:22:04 +00:00
Pedro Pinto 8e51b05941 More tweaks to improve performance tracing. 2018-10-02 16:22:04 +00:00
Pedro Pinto 75568e6c75 Made thread allocation configurable for order management. 2018-10-02 16:22:04 +00:00
Pedro Pinto 6e3c880ea2 Changed mercury to assume direct broker connections.
This is needed to reduce latency as we (optionally) move the execution
gateway to its on thread.
2018-10-02 16:20:00 +00:00
Pedro Pinto ded957a0ef SPARK-1686, Towards better server side performance. 2018-10-02 16:20:00 +00:00
Eric Harding 05741ceab0 SPARK-1742 test can fail when time moves foward 2018-10-01 14:56:35 -04:00
John Colvin 9e3b3879d0 Merged in lldatetime (pull request #75)
SPARK-1726 change DateTime.cpp to match c# format

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-09-25 15:32:54 +00:00
Kevin Darby a1b189fcb1 repenting my sins against the proto gods 2018-09-21 12:46:42 -04:00
Michael Harding 7a48e5dd5c SPARK-1725: not too many characters 2018-09-21 11:26:09 -04:00
John Colvin 2842aea933 lldatetime - TimeAndSales rows show local time 2018-09-20 15:35:48 -04:00
John Colvin f97d156020 in datetime.cpp, ptime_to_ll should use KindUnspecified by default 2018-09-20 15:13:20 -04:00
Eric Harding d8922be0ad Add udp.py to tools 2018-09-20 14:35:43 -04:00
John Colvin 5634ada367 cautionary comment in lldatetime(this ulong) extension 2018-09-20 13:43:56 -04:00
John Colvin 94d249edbd use ticks_per_day instead of (micros_per_day * ticks_per_micro) 2018-09-20 13:21:06 -04:00
John Colvin 1c29ac0ec5 missed a couple changes in last commit 2018-09-20 13:18:02 -04:00
John Colvin e7e280bad8 lldatetime pr edits, add test_lldatetime() to Co2Tests 2018-09-20 13:10:48 -04:00
Eric Harding 7ca11c3eee SPARK-1718 Fix trailing comma after deleted users. 2018-09-20 10:27:52 -04:00
Eric Harding caf6ac029c Fix ancient config bug where you can't reference a non-overloaded key in a rule or macro. 2018-09-20 10:27:52 -04:00
Eric Harding 4c0fa81963 Remove unused environment.proto 2018-09-20 10:27:52 -04:00
Kevin Darby 720c1595e0 Merged in more_lean (pull request #76)
made the 'toward' behavior for lean an enum
2018-09-19 22:14:31 +00:00
Kevin Darby bedd0051a9 made the 'toward' behavior on lean an enum 2018-09-19 16:36:25 -04:00
Jake Norbut 09bed1a713 SPARK-1728 - Symbol list is now restrictued according to DeploymentType for the gui; when DEMO, only sim; when PROD, not sim; will require upkeep as exchanges are added 2018-09-19 15:26:25 -05:00
John Colvin ebb53c5035 LLDateTime conversion pr edits 2018-09-19 14:20:33 -04:00
Eric Harding 243b82a6d7 Primitive settingsmanager 2018-09-19 13:31:45 -04:00
Taha Afzal bd4f840d27 Setting last_price to avg_price for SOD records 2018-09-19 12:17:22 -04:00
John Colvin de893d2175 SPARK-1726 change DateTime.cpp to match c# format 2018-09-19 11:49:38 -04:00
Taha Afzal 33658f13f6 SPARK-1722 orders cleanup weekend bug 2018-09-18 13:28:20 -04:00
Kevin Darby 469ee033b2 added a 'detach on toward' boolean to Lean, reasonable in it's own right, but so K. Loftus can race us against Chalupa. 2018-09-15 15:29:12 -04:00
Eric Harding 451fb67195 Fix market_segment_id in shared memory dumper. (uint8_t and std::cout disagree) 2018-09-11 12:44:52 -04:00
Eric Harding a21739a866 Fix build error 2018-09-10 11:04:39 -04:00
Eric Harding 7d694f5c04 Merged in AddOrMerge (pull request #71)
Change A1->A2, A2->A3 should result in A1->A3

Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-09-10 14:38:15 +00:00
Eric Harding 14e08cf508 Change A1->A2, A2->A3 should result in A1->A3 2018-09-07 17:39:27 -04:00
Pedro Pinto 12349ef8b7 More metrics tweaking. 2018-09-07 20:53:23 +00:00
John Colvin c99ee9e2d1 OrdersModel - on_security_positions gets position from state (non-incremental) 2018-09-07 13:06:25 -04:00
Pedro Pinto da71ec4c0f Fixed logging of deployment type. 2018-09-07 16:43:17 +00:00
Eric Harding edd8fe7604 Add count of synthetics in mdsource loop 2018-09-07 12:37:35 -04:00
Pedro Pinto 925bd72825 More tweaks to metrics. 2018-09-07 16:35:29 +00:00
Eric Harding 3ab2b132f6 Merged in ScreenCap (pull request #70)
Fix ScreenCapture to include negative offset monitors.

Approved-by: Jake Norbut <jake.norbut@bluetradesys.com>
And also Kevin but he did it wrong.
2018-09-07 16:02:55 +00:00
Eric Harding f35a9662fd Fix ScreenCapture to include negative offset monitors. 2018-09-07 11:09:00 -04:00
John Colvin b20f8d1293 SPARK-1705 mview working orders column always empty 2018-09-06 20:41:25 -04:00
Eric Harding fabb06e87c Metric for # of securities watched by MDSource 2018-09-06 18:08:13 -04:00
Kevin Darby 0ce2b9f135 Eag is a little sensitive about this ticks_off stuff, so better to hide for the vanilla case 2018-09-06 18:04:54 -04:00
Jake Norbut fea10e3578 Contract Picker - explicitly alpha sorting symbols and security types 2018-09-06 15:06:13 -05:00
Jake Norbut b0fd113c0f Resoring SecurityHelper sort in ContractPicker 2018-09-06 13:43:10 -05:00
Pedro Pinto a826543c07 Fixed up release notes. 2018-09-05 21:55:56 +00:00
Jake Norbut 7d3b1f3bd2 A tale of 2 snipers 2018-09-05 16:34:31 -05:00
John Colvin 7877e44713 SPARK-1695 Crash in lookup_strategy_async 2018-09-05 16:54:57 -04:00
Pedro Pinto 46387703fe Added a deployment type column to the logs so we can direct them. 2018-09-05 20:55:42 +00:00
Pedro Pinto ec9425f4e8 Added some tools to parse latency metrics out our logs. 2018-09-05 20:55:42 +00:00
Jake Norbut 4489f78b35 adding final release notes 2018-09-05 15:36:57 -05:00
Eric Harding 9f25b12c29 Merged in SPARK-1636 (pull request #69)
SPARK-1636 We can do better

Approved-by: Kevin Darby <kevin.darby@bluetradesys.com>
2018-09-05 20:32:40 +00:00
Eric Harding eaacafca86 SPARK-1636 We can do better 2018-09-05 15:41:25 -04:00
Eric Harding a1a591e162 Fix typo in StatefulPublisher 2018-09-05 13:49:50 -04:00
Eric Harding a9edc05b25 Merged in SPARK-1634 (pull request #68)
SPARK-1634

Approved-by: Kevin Darby <kevin.darby@bluetradesys.com>
2018-09-05 17:18:11 +00:00
Eric Harding 3a70f58662 SPARK-1644 StatefulPublisher should handle multiple updates to an entry 2018-09-05 13:10:40 -04:00
Eric Harding 56a7e43425 We will definitely log this in release mode accidently. Adding back the ifdef 2018-09-05 13:04:04 -04:00
Eric Harding 9a22e7e1fc Merge branch 'qa' of bitbucket.org:bluetradesys/spark into SPARK-1634 2018-09-05 11:16:52 -04:00
Eric Harding 89bbf25335 Add shell dataflow logging subsystem to track flow thought the shell. 2018-09-05 11:07:10 -04:00
John Colvin 2bfaf8305a replace improper .SelectMany subscriptions to the viewmodel in SparkWindows 2018-09-04 19:06:24 -04:00
Eric Harding b414289299 SPARK-1634 Crash in FillTupleSource._apply_changes 2018-09-04 17:45:08 -04:00
Eric Harding 9623a015df Remove annoying "unknown" (thread name) column when logging on windows. 2018-09-04 17:31:15 -04:00
John Colvin f3266cbcec SPARK-1691 correct order-type-columns' vertical alignment (present in fills and orderbook) 2018-09-04 15:00:03 -04:00
John Colvin 98e34aafcd rename CVOrderBookColumnCollection -> OrderBookColumnCollection 2018-09-04 14:24:52 -04:00
John Colvin aae0cba2f7 SPARK-1690 TimeAndSalesModel - only spawn 1 Observable.Poll sequence (aka the 'SelectMany' issue) 2018-09-04 14:00:29 -04:00
Pedro Pinto d4abac9d0d Tweaked metrics. 2018-09-04 15:40:35 +00:00
Jake Norbut ac0d0d8dae Colors - changing spreader order color to yellow to make badge decorations a bit more readable 2018-09-04 09:51:55 -05:00
Eric Harding 6ff71980aa SPARK-1634 - rx Cache() does not handle unsubscribe correctly. 2018-09-04 10:28:19 -04:00
Pedro Pinto 23352438cf Added latency metrics for tick to order and fill to order 2018-09-03 16:01:58 -04:00
John Colvin 76a519911d LadderGridHost - avoid index-out-of-range ex if _column_for_point is called before columns are set 2018-09-02 14:33:09 -04:00
John Colvin 4447412e64 OrderBook settings dialog - stretch drag-indicator up/down arrows to scale 2018-09-02 14:26:52 -04:00
Eric Harding 35b01451c4 Merged in SPARK-1574 (pull request #67)
SPARK-1574

Approved-by: Jake Norbut <jake.norbut@bluetradesys.com>
Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-09-01 01:14:01 +00:00
John Colvin bab2508299 SPARK-1637 notes on grid settings 2018-08-31 17:40:50 -04:00
Michael Harding defdcc5d44 Spark User Doc: Analytics and fixes 2018-08-31 17:37:17 -04:00
Eric Harding b4a8cf0cff SPARK-1574 code review feedback 2018-08-31 17:37:03 -04:00
John Colvin 7e8ef4d273 sounds ui - change playbutton cursor to 'hand' 2018-08-31 15:07:13 -04:00
John Colvin 3e9e4c0f12 fix mview flickering rows after changing securities a few times 2018-08-31 15:05:45 -04:00
John Colvin 9de3e2c597 sounds view - change "When order is filled" to "When order gets a fill" 2018-08-31 14:16:32 -04:00
John Colvin 3382fe22ca SPARK-1683 - NullReferenceException in TriggerOrderVM 2018-08-31 14:09:22 -04:00
Kevin Darby 9eaa2eb5e4 with the revelation that Cover is an order not a parameter in orders, Top is ready to go
that said, I'll need to refactor some things next cycle to clean up
2018-08-31 14:09:35 -04:00
Jake Norbut 451dcc3352 Updating test 2018-08-31 13:00:16 -05:00
Michael Harding e490493ae7 More order colors 2018-08-31 13:24:41 -04:00
Kevin Darby fb8904fed4 fix bug arising from nesting algos 2018-08-31 13:09:47 -04:00
Taha Afzal 4e7f3ed036 Merge branch 'qa' of bitbucket.org:bluetradesys/spark into qa 2018-08-31 12:39:57 -04:00
Taha Afzal aa0080224d merging 2018-08-31 12:36:37 -04:00
John Colvin 3537be6d98 Window Settings Dialog - change title format 2018-08-31 12:34:13 -04:00
Jake Norbut 6f72c2f268 PnL: fixed minor bug of PnL Price not resolving when md contains no trades and the pnl source is set to something other than last 2018-08-31 11:32:11 -05:00
Eric Harding 2e6aa8b54d merge qa to feature branch 2018-08-31 10:52:40 -04:00
Taha Afzal 87ef164264 SPARK-1681 (Spreader IOC inf loop protection) 2018-08-31 10:50:45 -04:00
Eric Harding c4c8bb6f5e SPARK-1574 Fix manaaged market data for new layout 2018-08-31 10:35:58 -04:00
Eric Harding c53c12b5d8 SPARK-1574 Changes from ushort to uint in shell 2018-08-31 09:42:48 -04:00
Eric Harding f5c4eda4df Update onixs license (again) 2018-08-31 09:36:38 -04:00
John Colvin 55cb3592a1 SPARK-1652 unify settings icons across all forms 2018-08-30 18:19:30 -04:00
Pedro Pinto 8e00da5a72 SPARK-1653, The initial crash that john reported turned out to be a monster.
Events were getting re-ordered in our event queue, possibly due to
this:

https://github.com/cameron314/concurrentqueue/issues/126

We abandoned the moody camel queue.
2018-08-30 21:49:01 +00:00
Pedro Pinto c19b720121 Fixed assert in TimeBox order. 2018-08-30 21:49:01 +00:00
Pedro Pinto 93af8bc738 SPARK-1645, Changed tag 1603 to SPARK. 2018-08-30 21:49:01 +00:00
Pedro Pinto 47cf8f1df8 Added sim support for IOCs. 2018-08-30 21:49:01 +00:00
Pedro Pinto 79b011d934 Changed server order manager metrics to nanoseconds. 2018-08-30 21:49:01 +00:00
Pedro Pinto 9e9a90f27b Changed histogram metrics to use uint64_t 2018-08-30 21:49:01 +00:00
Pedro Pinto 7a319ed943 Fixed subsystem logging filter. 2018-08-30 21:49:01 +00:00
John Colvin 50724cec66 oops - commented out wrong color in Buttons.xaml 2018-08-30 15:58:52 -04:00
John Colvin 6de25c700f SPARK-1642 / SPARK-1677 use 'Play-button' style for preview/info button 2018-08-30 15:51:45 -04:00
Eric Harding 4256c51993 Move EqualityComparer and MathUtils to spark_core 2018-08-30 15:48:34 -04:00
Jake Norbut d56ea7df25 Merge branch 'qa' of bitbucket.org:bluetradesys/spark into qa 2018-08-30 13:12:11 -05:00
Jake Norbut 6ffb8b630f SPARK-1651 cleanup collapse/exapnd all into 2 sepearate toolbar icons 2018-08-30 13:12:05 -05:00
John Colvin 677d1aaa77 SPARK-1642 / SPARK-1657 order completed/canceled aren't playing 2018-08-30 13:34:03 -04:00
John Colvin 07874cad77 SPARK-1642 / SPARK-1656 disable toast notifications for 1.2 via toggles.conf 2018-08-30 13:21:11 -04:00
John Colvin c53c843d54 remove unused CVOrderBook message in toggles.conf 2018-08-30 11:55:22 -04:00
John Colvin 5920b841c3 SPARK-1642 / SPARK-1655 remove silence at beginning of some sounds 2018-08-30 11:50:05 -04:00
Eric Harding 6d7fbe5c84 SPARK-1574 Add space for implied book 2018-08-30 11:30:33 -04:00
Michael Harding 2ba33caae8 SPARK-1639: More of this 2018-08-30 11:17:46 -04:00
Eric Harding 293dddc54f SPARK-1574 Fix Co2Tests.BlitPointerTuple 2018-08-30 10:41:57 -04:00
Eric Harding 1ca250ccb1 SPARK-1574 PriceSize Needs to be bigger (native) 2018-08-29 17:18:13 -04:00
John Colvin bca8f754b6 OrdersModel - use .Naggle in positions observable 2018-08-29 16:58:33 -04:00
John Colvin 146e555ad0 SPARK-1650 Ladder - selected account resets to the first item in dropdown when account limits are changed 2018-08-29 16:00:09 -04:00
John Colvin 5424a07862 SPARK-1647 Position button on ladder not reflecting accurate position per account 2018-08-29 15:43:37 -04:00
Jake Norbut d6a6b2ca79 FillTuple - no longer trimming account per Taha; SOD test was done w/o the trim and things worked as execpted 2018-08-29 14:22:18 -05:00
Jake Norbut 8e6b863d8f updating test text 2018-08-29 14:22:18 -05:00
Taha Afzal 660dd71bad rounding the trigger price 2018-08-29 14:16:48 -04:00
Michael Harding 88ae39fa52 SPARK-1639: tweaks 2018-08-29 13:57:06 -04:00
Pedro Pinto 353a33a391 Added some performance metrics to server. 2018-08-29 15:48:28 +00:00
Jake Norbut 6a6e1b1139 Workspaces - added logging detailing window loads and total workspace load time 2018-08-29 10:26:01 -05:00
Eric Harding 44262c584c Update onixs license 2018-08-29 10:53:20 -04:00
Taha Afzal 935e8455a3 clearing account vs account 2018-08-29 09:48:57 -04:00
Taha Afzal d01441987d adding test for SOD 2018-08-28 12:26:44 -04:00
Pedro Pinto b24528ba2f Merged in fill account id fixes 2018-08-28 11:52:52 -04:00
Pedro Pinto e2b781c42c Included internal account id in stored fills. 2018-08-28 11:50:45 -04:00
John Colvin ff3facedb0 add target 'cycles per ms' to WorkLoop excessive cycle log message 2018-08-28 11:39:28 -04:00
Michael Harding 119a2dc6ad SPARK-1639: Help tooltips for Trigger Order 2018-08-28 10:58:19 -04:00
Pedro Pinto 74defda5a9 Merge remote-tracking branch 'origin/qa' into acount_id_in_fills 2018-08-28 10:57:38 -04:00
Taha Afzal 9212e8d1da improved the test 2018-08-28 09:14:36 -04:00
John Colvin c88a004c27 fractional_hedging test edits 2018-08-27 20:30:40 -04:00
John Colvin 0cab24523d change "hedge ratio" to "lean qty factor" in test 2018-08-27 20:01:13 -04:00
John Colvin c4500e8ac0 rename hedge_ratio test -> lean_qty_factor 2018-08-27 19:58:55 -04:00
John Colvin 6d180156e2 n_legs test - align order params in columns, easier to track with eyes 2018-08-27 18:47:24 -04:00
Pedro Pinto 46dd1b7445 Switched to use account string rather than account id in fill to preserve existing code 2018-08-27 18:13:20 -04:00
Pedro Pinto bd8db00227 Removed rtags from setup_builds (nobody will care) 2018-08-27 21:53:24 +00:00
John Colvin f4bd00ae77 spreader_common_setup_1/2 edits 2018-08-27 17:21:07 -04:00
Michael Harding 38842a91c3 SPARK-1640: Help tooltip for Hidden field in synthetic 2018-08-27 17:03:38 -04:00
John Colvin 1f44425ac1 simple_sanity/spreader_common_setup_1.txt edits 2018-08-27 16:59:18 -04:00
Eric Harding 3581d05883 Add baseline benchmark for PriceSize 2018-08-27 16:32:13 -04:00
John Colvin 251775283b UserSettingsTest - more edits 2018-08-27 15:12:12 -04:00
John Colvin acabe59d8a UserSettingsTest edits(2) 2018-08-27 14:33:23 -04:00
John Colvin efa941bdb1 UserSettingsTest edits 2018-08-27 14:29:44 -04:00
Jake Norbut f8028ab381 changing default order color (spreader) 2018-08-27 13:24:11 -05:00
John Colvin 8a638d2e86 SoundAndNotifications - change a couple words 2018-08-27 13:25:40 -04:00
John Colvin 09d34b03ac SoundAndNotificationsTest edits 2018-08-27 13:15:05 -04:00
Jake Norbut 3798d64403 Merged in SPARK-1638 (pull request #66)
SPARK-1638

Approved-by: Michael Harding <michael.harding@bluetradesys.com>
2018-08-27 17:11:57 +00:00
Jake Norbut fc7dcfad80 misc refactor 2018-08-27 11:25:32 -05:00
Jake Norbut 483a61426d SPARK-1638 - Hiding orders not yet ready for prod; changing order color 2018-08-27 11:22:35 -05:00
Taha Afzal 8094b53402 unifying SOD config 2018-08-27 10:45:28 -04:00
Taha Afzal 837c3d5949 some manual test improvements/spellings 2018-08-27 10:45:28 -04:00
Eric Harding 1a7b550e08 SPARK-1636 Begin security discovery earlier. 2018-08-27 10:18:11 -04:00
John Colvin bbb1b8f147 Sound and Notifications test 2018-08-24 20:27:04 -04:00
Eric Harding 5656f1685c Merged in Logging (pull request #65)
Improve managed logging api
2018-08-24 21:37:39 +00:00
Michael Harding cd04e27625 move helpButton tooltip duration to help button 2018-08-24 16:56:50 -04:00
Michael Harding dc8480d778 Test updates/fixes 2018-08-24 16:48:18 -04:00
Eric Harding 5127b70fea Improve managed logging api 2018-08-24 16:36:40 -04:00
Pedro Pinto f4a4a34567 Included internal account id in stored fills. 2018-08-24 20:25:44 +00:00
John Colvin f53b300cd4 Grid Settings - change icon to 'Gear' 2018-08-24 14:47:44 -04:00
John Colvin 1b99cff2c5 SPARK-1629 Synthetic ladders are not restored on starting up 2018-08-24 14:32:38 -04:00
John Colvin b1d799787a SPARK-1628 Clone of a synthetic crashes the shell 2018-08-24 14:00:54 -04:00
John Colvin d019ae287c SPARK-1635 Ladder - position button should show "-" (NaN) for accounts with no orders (let 0 indicate the sum of fills is 0) 2018-08-24 13:42:40 -04:00
Jake Norbut ffc316f50c updating fills test 2018-08-24 09:34:14 -05:00
John Colvin fc5eb48d6a Merged master into qa 2018-08-24 00:28:19 -04:00
John Colvin c394c90641 Grid Settings Test edits 2018-08-24 00:10:40 -04:00
Taha Afzal f1de94a218 Merge branch 'master' of bitbucket.org:bluetradesys/spark into qa 2018-08-23 23:50:53 -04:00
John Colvin 58468af039 add Grid Settings Test 2018-08-23 22:48:23 -04:00
John Colvin 5ccfa14edd rename 'Grid' Settings - 'Window' Settings 2018-08-23 21:51:35 -04:00
John Colvin 54f4eab6de change GridSettings icon 2018-08-23 21:48:43 -04:00
John Colvin 6c4beaf0ea sounds - fix tooltip in GridSettingsView 2018-08-23 18:55:04 -04:00
John Colvin bbf3e6146d SPARK-1405 Order ticket for a user with no account crashes 2018-08-23 18:19:19 -04:00
Eric Harding b6c8417454 Merged in cover_dynamic2 (pull request #64)
Cover dynamic2
2018-08-23 20:48:32 +00:00
Eric Harding 9cfda60bdc Remove the IsEnabled again. 2018-08-23 16:26:09 -04:00
Michael Harding e19907ad92 Lighter badge background 2018-08-23 15:59:11 -04:00
Jake Norbut b5bdc18332 adding test for new badge functionality 2018-08-23 14:38:16 -05:00
John Colvin 0e81b38d85 SPARK-1584 IOC hiding 2018-08-23 14:59:33 -04:00
Michael Harding 2864db23c9 SPARK-1580: Wildcards in new rows fixed 2018-08-23 14:42:55 -04:00
Michael Harding c012a63e86 SPARK-1581: Limits can now be set twice 2018-08-23 14:42:55 -04:00
John Colvin 1b1da9c4e5 SPARK-1583 Ladder Low marker 2018-08-23 14:28:45 -04:00
Taha Afzal 4de28cfbbf merging from prod 2018-08-23 14:16:03 -04:00
John Colvin 0240e27267 SPARK-1582 / SPARK-1587 remove bid/ask from payup/less dropdown 2018-08-23 13:54:39 -04:00
John Colvin 6ceb1f30b2 SPARK-1582 / SPARK-1586 Payup with +0 should be enabled (radio button checked) by default 2018-08-23 13:54:39 -04:00
John Colvin 9d33d334f0 SPARK-1582 / SPARK-1585 sends limit order if fixed price is nan 2018-08-23 13:54:38 -04:00
Taha Afzal ce93b15b2d Hidden order sell side issue fixed 2018-08-23 13:55:09 -04:00
Jake Norbut fc594a2ecd Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-08-23 12:46:52 -05:00
Jake Norbut 37db2f60ab Badges - making the combined bid + ask at same level a bit easier on the eyes 2018-08-23 12:46:46 -05:00
Eric Harding e33642d325 Merge branch 'SPARK-1570' of bitbucket.org:bluetradesys/spark 2018-08-23 12:54:22 -04:00
Kevin Darby e99e063db3 commenting out second dynamic_order until John can get the real typename in the gui 2018-08-23 12:10:29 -04:00
Kevin Darby 75f9c5bc9d thanks to John this looks decent now 2018-08-23 12:10:29 -04:00
Kevin Darby c20381c3a5 added support for cover order and dynamic_orders 2018-08-23 12:10:29 -04:00
Michael Harding edeb67fdee Fix Build 2018-08-23 11:25:55 -04:00
Michael Harding dc9dd81a44 Merged in help (pull request #63)
Synthetic Help Buttons

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-08-23 15:13:26 +00:00
Michael Harding 78db1442fe Merge with master 2018-08-23 11:11:48 -04:00
Michael Harding b554a8ba49 SPARK-1562: Add Manual to Help menu 2018-08-23 10:54:14 -04:00
Michael Harding e5a5fac50c Using NullToVisibilityConverter 2018-08-23 10:49:04 -04:00
Eric Harding 23c799ac3a SPARK-1570 round_to_quote_price WIP 2018-08-23 09:53:48 -04:00
John Colvin 7dd759281c blah 2018-08-23 00:39:39 -04:00
John Colvin 162c192963 SPARK-1545 Spreader sniper mode 2018-08-23 00:37:35 -04:00
Taha Afzal 637a6cb094 SPARK-1579 test 2018-08-22 23:19:35 -04:00
Taha Afzal 350bc37a8d SPARK-1578 account vs clearing account 2018-08-22 23:19:35 -04:00
John Colvin 1b1c854860 ObjectHelper - use EnumHelper.try_parse to avoid exceptions from null/empty strings 2018-08-22 20:22:51 -04:00
John Colvin 0bd87e7063 Brush thread-safety 2018-08-22 20:22:42 -04:00
Jake Norbut 4fdea219b6 FillsVM - making it safer in case of nulls 2018-08-22 18:11:14 -05:00
John Colvin 102a6d8269 fix notification predicates that were dependent upon observing every update (api streams are naggled now) 2018-08-22 18:00:02 -04:00
John Colvin e05c38dcf6 remove ThreadYieldRWGate 2018-08-22 18:00:01 -04:00
John Colvin 2c8c6ac9b8 OrderRecordTupleSource - use lock instead of ThreadYieldRWGate 2018-08-22 18:00:00 -04:00
John Colvin e72f171657 fix ThreadSafeDisposable again (typeo) 2018-08-22 17:59:52 -04:00
Jake Norbut 47bed56267 pnl and fills - moving account accessing code to FillTuple 2018-08-22 16:56:15 -05:00
Jake Norbut 2b08791aa1 PnL - always TrimEnd the Account, regardless of Order or Fill 2018-08-22 14:10:18 -05:00
John Colvin 2ee725110e fix ThreadSafeDisposable 2018-08-22 13:04:25 -04:00
John Colvin 5f4db9fab6 ObservableDemuxer - use lock instead of ThreadYieldRWGate 2018-08-22 13:04:24 -04:00
John Colvin d58c28986b FillTupleSource - use lock instead of ThreadYieldRWGate 2018-08-22 13:04:24 -04:00
Jake Norbut 9357016ec0 Moving SOD DST UTC calculations into MarketScheudle class 2018-08-22 11:35:37 -05:00
Jake Norbut aab8995de7 more of SPARK-1566 and other things dicussed with Taha and John 2018-08-22 11:18:33 -05:00
Taha Afzal 6e054d7814 SpreaderOrder::_get_order_error is a bit more strict now: 2018-08-22 12:17:35 -04:00
Taha Afzal 7c19b7615d Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-08-21 21:41:32 -04:00
Taha Afzal b7c6b1ee0d Hidden quoting mode done 2018-08-21 21:38:08 -04:00
John Colvin 6608bee39f SPARK-1544 Ability to change number pad quantities in Ladder 2018-08-21 21:14:25 -04:00
John Colvin b5e6cfea8f make EnumerableStringConverter more robust 2018-08-21 21:14:24 -04:00
John Colvin a763c54a33 LadderSettingsView - replace margins with Row/ColumnDefinitions for spacing 2018-08-21 21:14:24 -04:00
Eric Harding 7ce4ac7ab5 Merged in SPARK-1509-mark2 (pull request #62)
SPARK-1509 queueing in shell

Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-08-22 00:13:55 +00:00
Jake Norbut 29fd10e576 SPARK-1559 - Badges - hide orders whose DisplayStatus is set to hidden 2018-08-21 17:03:24 -05:00
Taha Afzal e4e24c0999 Added DisplayStatus to OrderStatus 2018-08-21 17:49:30 -04:00
Eric Harding dbd764f698 merge from master 2018-08-21 16:42:49 -04:00
Eric Harding 15feef9d23 SPARK-1509 queueing in shell 2018-08-21 16:00:33 -04:00
Taha Afzal f4feabf83d added hidden/IOC state to spreader 2018-08-21 15:58:24 -04:00
Michael Harding 48e5ed75f0 Merged badgecolor into master 2018-08-21 15:46:46 -04:00
Michael Harding ee47515990 SPARK-1573: Slightly less bad badge colors 2018-08-21 15:39:10 -04:00
John Colvin 38a769ae00 Merge branch 'trigger_exit' 2018-08-21 15:20:46 -04:00
John Colvin 89f64e09f1 GridSettingsView - minor ui tweaks, sounds use less vertical space 2018-08-21 14:51:20 -04:00
Jake Norbut 439d874b58 adding AdminService.get_admin_data as a testable endpoint in case someone wants to parse this data 2018-08-21 11:58:08 -05:00
John Colvin 44661d90c9 OrdersModel - fix security_total_position extension method 2018-08-21 12:37:34 -04:00
Jake Norbut 8af4d2ccb7 SPARK-1565 - SOD records are filtered out on new Fill window launches 2018-08-21 10:29:19 -05:00
Michael Harding 9a5c963a3e Merge branch 'help' of bitbucket.org:bluetradesys/spark into help 2018-08-21 11:02:24 -04:00
Michael Harding 578290f8e8 SPARK-1453: Help buttons, rename Hedge Ratio, no negatives 2018-08-21 11:01:39 -04:00
John Colvin b11b9f8d7d rearrange LadderSettingsView market-break-lines, visibility reflects settings 2018-08-20 22:55:13 -04:00
Taha Afzal 1c7e14a00c Hidden quoting evaluation function 2018-08-20 22:24:14 -04:00
John Colvin aaa2bcd20d SPARK-1550 Position in Ladder 2018-08-20 19:24:33 -04:00
John Colvin 17654949f7 MEFExport PositionService 2018-08-20 19:24:31 -04:00
John Colvin d1f8c5fefc remove obsolete type 'DisposableSingle' 2018-08-20 19:24:31 -04:00
John Colvin 38f5f24952 ThreadSafeDisposable - add name property and check_not_disposed method 2018-08-20 19:24:30 -04:00
John Colvin 9b67ce7a43 ThreadSafeDisposable - fix 'has_disposed_finished' typeo 2018-08-20 19:24:29 -04:00
John Colvin ba3385aea8 ObservableDemuxer - use ThreadYieldRWGate 2018-08-20 19:24:29 -04:00
John Colvin d23eb81473 FillTupleSource - use ThreadYieldRWGate 2018-08-20 19:24:28 -04:00
John Colvin 303fd13056 move 'ThreadYieldRWGate' to its own file 2018-08-20 19:24:27 -04:00
Taha Afzal c59589bc9f Hidden quoter field exposed 2018-08-20 17:46:01 -04:00
Michael Harding 75a1f6df9f SPARK-1453: Help buttons, rename Hedge Ratio, no negatives 2018-08-20 17:10:51 -04:00
Jake Norbut 8e792fbd12 SPARK-1569: Day PnL in the summary status box 2018-08-20 15:31:20 -05:00
Jake Norbut 3d7e04ded1 Badges - removing unnecessary allocation when comparing triangle vertices 2018-08-20 15:04:05 -05:00
Kevin Darby 24290ddb27 added IOC / FAK 2018-08-20 15:03:18 -04:00
Jake Norbut d3bd653d8e Merged in badges_for_taha (pull request #59)
Badges for taha

Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-08-20 17:59:19 +00:00
Jake Norbut 237b59afe5 some PR suggestions 2018-08-20 12:11:16 -05:00
John Colvin 5f9969ad21 LadderSettings - add session_range_fill default to BTSColors 2018-08-20 11:40:58 -04:00
John Colvin ff7bd05ad3 fix LadderSessionRange refresh 2018-08-20 11:25:07 -04:00
John Colvin 00468fdb4d LadderGridHost - refresh session_low/high 2018-08-20 00:01:07 -04:00
John Colvin 695ee0e97c fix LadderSettingsVM.cs 2018-08-19 23:04:30 -04:00
John Colvin 166a34d3b3 LadderSettings - add session-range-fill color 2018-08-19 22:56:33 -04:00
John Colvin 1beca7e3af LadderGridHost - break up timer.tick callback code into several small methods 2018-08-19 22:56:33 -04:00
Taha Afzal e9a55d1881 Sniper quoter state machine 2018-08-19 22:22:51 -04:00
Taha Afzal 4977957ec1 PositionService added 2018-08-19 09:18:20 -04:00
John Colvin e53e0b8e49 SPARK-1540 Day high/low visual markers 2018-08-17 18:37:06 -04:00
John Colvin 2bb91cfd22 LadderSettings - use 'safe_get_hash_code' for reference type props 2018-08-17 18:37:05 -04:00
John Colvin 90acee8c81 LadderSettings - add 'last_column' to Equals method 2018-08-17 18:37:05 -04:00
John Colvin 795d144abe LadderSettings from public -> internal class 2018-08-17 18:37:04 -04:00
Eric Harding f09b8b64ba fix typo in config 2018-08-17 17:17:54 -04:00
Eric Harding d1478905d5 Merged in UnitTests (pull request #60)
UnitTests

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-08-17 21:07:08 +00:00
Eric Harding 56e7fcb60b BTS managed unit test runner 2018-08-17 17:03:54 -04:00
Jake Norbut 189ed40aa2 fixing merge again 2018-08-17 12:06:21 -05:00
Jake Norbut ca616d81b1 fixing merge conflict 2018-08-17 12:01:42 -05:00
Jake Norbut 9955fdde74 merge issues 2018-08-17 11:53:16 -05:00
Jake Norbut 8c99f2eb74 SPARK-1555 2018-08-17 09:54:32 -05:00
Jake Norbut ac182d8f83 SPARK-1553 2018-08-17 09:31:27 -05:00
Jake Norbut 15f40805e5 SPARK-1556 2018-08-17 08:53:02 -05:00
Taha Afzal 2fecc83a7b Canceling or not of hedging orders is a proto bool now 2018-08-17 08:09:51 -04:00
Taha Afzal 31195329af SPARK-1567 2018-08-16 21:47:00 -04:00
John Colvin f42af15fe1 SPARK-1546 Trigger Order exit condition 2018-08-16 21:13:22 -04:00
Jake Norbut a17d54f6a0 SPARK-1554 2018-08-16 16:26:30 -05:00
Taha Afzal 78368944c8 Merge branch 'prod' of bitbucket.org:bluetradesys/spark into prod 2018-08-16 15:36:14 -04:00
Taha Afzal 3812783b29 added logs in TriggerOrder to caputure initial md state 2018-08-16 15:36:02 -04:00
Jake Norbut b4908ac155 the great cpp fixup 2018-08-16 14:02:01 -05:00
Taha Afzal 3aa8b8cd26 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-08-16 14:30:18 -04:00
Taha Afzal 9e39ebe981 SPARK-1567 partially done 2018-08-16 14:27:52 -04:00
Eric Harding 7cbdbcc790 Add a command line parser to sparkcmd 2018-08-16 13:28:29 -04:00
John Colvin 93b224f37a sounds - remove 'System' sound dropdown (until custom sounds are implemented) 2018-08-16 12:19:21 -04:00
John Colvin 2d5c8fcbb9 post prod->master merge cleanup (OrderBookRowVM.cs) 2018-08-16 12:10:14 -04:00
John Colvin dedccf7098 preview sound by clicking help button next to dropdown 2018-08-16 11:57:40 -04:00
John Colvin 0afeca4f38 un-nest NAudioPlayer (so all Spark proj may access it) and move to own file 2018-08-16 11:57:40 -04:00
John Colvin 1cd9723964 prevent duplicate sounds from repeating for brief period after playing 2018-08-16 11:57:40 -04:00
Jake Norbut d0e0b2088c cpp maintenance 2018-08-16 10:33:53 -05:00
Taha Afzal 7d0eafe389 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-08-16 10:52:31 -04:00
Taha Afzal 484b4995b2 fixing broken tests (disabling keep_hedges_working) 2018-08-16 10:52:09 -04:00
Eric Harding 659e083f6f Move decode_ticks to common location for emumba 2018-08-16 10:19:49 -04:00
Taha Afzal 35f5cd95b0 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-08-15 21:43:40 -04:00
Taha Afzal 891adf4203 1541 hedge orders keep working on a cancel 2018-08-15 21:43:33 -04:00
Jake Norbut bd3d407a0e PnL - Pennies are back 2018-08-15 19:29:22 -04:00
Pedro Pinto 549de30682 Implemented Jake's note on spread leg last px. 2018-08-15 19:29:22 -04:00
Taha Afzal a3599bfe80 Fix for the condition when the quoter filled price != order price 2018-08-15 19:29:21 -04:00
Jake Norbut a232170d55 I think this will come in handy one day for testing 2018-08-15 19:29:21 -04:00
Eric Harding 34251795f2 Quiet websocketpp.transport errors 2018-08-15 19:29:21 -04:00
Eric Harding 6e9a15f4ee Change TableUpdate dictionary implementation 2018-08-15 19:29:20 -04:00
Michael Harding bb2f45abb0 SPARK-1549: Move wildcard to top of the list 2018-08-15 19:29:20 -04:00
Michael Harding 688c96ee14 SIM Exchange Settings 2018-08-15 19:29:20 -04:00
Jake Norbut d8da7ad712 can't keept up w/ the version numbers 2018-08-15 19:29:19 -04:00
Jake Norbut abd79ec2d2 updating notes 2018-08-15 19:29:19 -04:00
Jake Norbut c0fa0b4b07 updating notes post merge 2018-08-15 19:29:19 -04:00
Eric Harding 72674a3aff SPARK-1548 Enable merging live market data with simulator 2018-08-15 19:29:18 -04:00
Jake Norbut 2a187bf1a9 Adding Expand/Collapse All to the OrderBook tool-well area (and right click menu) 2018-08-15 19:29:05 -04:00
Eric Harding b19d61a869 Update release notes 2018-08-15 19:24:00 -04:00
Jake Norbut ff9a36b567 Updating version under which new features will reside 2018-08-15 19:23:59 -04:00
Jake Norbut c39df93e8a updating notes 2018-08-15 19:23:59 -04:00
Jake Norbut 64009e64fc Symbol Column filter is now a Discrete values; added new column to saved filter settings 2018-08-15 19:23:48 -04:00
Jake Norbut 0432fc0f3d Adding Last Hour hyperlink which sets the Begin time in Period mode to the Now - 1 hour 2018-08-15 19:19:08 -04:00
Jake Norbut df2ab14d49 adding Symbol column to the Orderbook; column filter is a regex at the moment, which is not ideal 2018-08-15 19:17:57 -04:00
Jake Norbut 666868d900 Orderbook rows are now collapsed by default; Orders in Error status can be recreated 2018-08-15 17:25:12 -04:00
John Colvin 5240d897e9 SPARK-1534 - (fix previous commit) 2018-08-15 17:25:09 -04:00
John Colvin b6fe933f07 SPARK-1534 mview - show synthetic future-leg working orders in future's row 2018-08-15 17:25:08 -04:00
Eric Harding 6ad896734d fix build 2018-08-15 17:05:48 -04:00
Eric Harding 544caec53f Switch from NUnit to MSTest. Seems more reliable. 2018-08-15 16:52:28 -04:00
Eric Harding 3f92ada6e3 Add ApiTests.cs to spark_tests 2018-08-15 16:45:33 -04:00
Eric Harding 39374c9350 Fix jenkins unit tests, hopefully. 2018-08-15 15:49:05 -04:00
Jake Norbut 11211f4633 PnL - Pennies are back 2018-08-15 14:45:32 -05:00
Eric Harding 4d5cc1e890 re-enable (some) managed unit tests 2018-08-15 15:34:28 -04:00
John Colvin 1804de10c1 sounds - ctrl + click on help button copies info to clipboard 2018-08-15 15:06:24 -04:00
Pedro Pinto dd6d86b9b1 Merged in spread_leg_last_px (pull request #58)
Implemented Jake's note on spread leg last px.

Approved-by: Jake Norbut <jake.norbut@bluetradesys.com>
2018-08-15 17:43:34 +00:00
Pedro Pinto b12fb8c175 Implemented Jake's note on spread leg last px. 2018-08-15 17:29:06 +00:00
John Colvin 74d2d54740 adding sounds - game_over_arcade, game_sound_wrong, reload_1911 2018-08-15 13:17:05 -04:00
Taha Afzal 8d5402bd4d Merge branch 'prod' of bitbucket.org:bluetradesys/spark into prod 2018-08-15 13:12:36 -04:00
Taha Afzal 7433484484 Fix for the condition when the quoter filled price != order price 2018-08-15 13:12:31 -04:00
Jake Norbut 6bb7f874d4 Merge branch 'prod' of bitbucket.org:bluetradesys/spark into badges_for_taha 2018-08-15 11:40:39 -05:00
John Colvin 4dda3dc833 sounds - add cash_register_purchase.wav 2018-08-15 12:09:50 -04:00
John Colvin da47650ed8 fix 2 method xml summaries 2018-08-15 12:09:48 -04:00
Eric Harding 7db6591d22 fix _DISABLE_EXTENDED_ALIGNED_STORAGE issue with 15.8.0 msvc compiler 2018-08-15 11:40:35 -04:00
Eric Harding a352311ce9 fix _DISABLE_EXTENDED_ALIGNED_STORAGE issue with 15.8.0 msvc compiler 2018-08-15 11:25:28 -04:00
Jake Norbut 0687fbb30a SPARK-1558 2018-08-14 17:29:35 -05:00
John Colvin bf9cee2dc1 SPARK-1371 Implement order book settings 2018-08-14 17:51:36 -04:00
John Colvin 278898804b TimeSpanControl - add tick up/down buttons 2018-08-14 17:14:39 -04:00
John Colvin 54fc7a3713 UserSettingsHub - when initializing, verify persisted settings is not null before notifying observers 2018-08-14 17:14:39 -04:00
John Colvin 9011076b71 ObjectHelper.try_convert - verify obj is IConvertible before calling Convert.ChangeType 2018-08-14 17:14:39 -04:00
John Colvin d1382e8598 ColorPickerControl - fix PalettesPropertyChanged callback 2018-08-14 17:14:38 -04:00
John Colvin 045418acee OrdersModel - create OrderRecordTuples observable 2018-08-14 17:14:37 -04:00
John Colvin 11c1befb0b ComboCheckBox - change HeaderText prop to HeaderContent 2018-08-14 17:14:36 -04:00
John Colvin 23f0408fd4 GridSettings\Sounds - add PropertyWrapperVM functional utils for reusable simple viewmodel templates 2018-08-14 17:14:36 -04:00
John Colvin f85b10a7df add IRaiseNotifyPropertyChanged interface (implement in ViewModelBase) 2018-08-14 17:14:35 -04:00
John Colvin c9cf41e4ad WindowStyle - remove CloseOnEscape property (use CommandBinding w\ SystemCommands.CloseWindow) 2018-08-14 17:14:35 -04:00
John Colvin 864cfe48ab add grab\grabbing cursor resources 2018-08-14 17:14:34 -04:00
John Colvin dbf1c583f0 Grid Settings\Sounds - add Predicate types 2018-08-14 17:14:33 -04:00
John Colvin 472064a882 Grid Settings\Sounds - add new Proto types 2018-08-14 17:14:31 -04:00
Jake Norbut 289f9259bb I think this will come in handy one day for testing 2018-08-14 15:58:03 -05:00
Jake Norbut 914fbe8805 Merge branch 'prod' of bitbucket.org:bluetradesys/spark into badges_for_taha 2018-08-14 15:50:33 -05:00
Jake Norbut 8ab9943834 SPARK-1557 and most of SPARK-1553 2018-08-14 15:48:28 -05:00
Eric Harding 197b6e85bd Quiet websocketpp.transport errors 2018-08-14 16:44:29 -04:00
Taha Afzal 13940c659b comments 2018-08-14 15:05:02 -04:00
Michael Harding f3831c568f Merged in userdoc (pull request #57)
SPARK-1426: User Docs
2018-08-14 18:49:48 +00:00
Eric Harding afea120359 Merged in TableUpdateGoFaster (pull request #56)
Change TableUpdate dictionary implementation

Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-08-14 17:19:03 +00:00
Eric Harding ca4a2b9bd1 Add CMEConnection information to parse_channels for emumba 2018-08-14 12:59:39 -04:00
Jake Norbut 0ad1103f78 requesting a sanity check here 2018-08-14 11:31:06 -05:00
Michael Harding 79eac6a56f SPARK-1426: User Docs 2018-08-14 11:22:14 -04:00
Eric Harding dfaeb63ded Change TableUpdate dictionary implementation 2018-08-14 09:40:58 -04:00
Taha Afzal 95d9d10226 Added WAITING_FOR_FIRST_ACK to TriggerOrder 2018-08-13 23:33:25 -04:00
Michael Harding ffa1d17860 SPARK-1549: Move wildcard to top of the list 2018-08-13 12:59:51 -04:00
Taha Afzal 1e41fbdb92 renamed TriggerExitCondition.enabled to timeout_enabled 2018-08-13 10:00:59 -04:00
Taha Afzal 5f5ae72a28 Trigger exits on price condition now 2018-08-13 09:46:22 -04:00
Taha Afzal 771ead46f2 getting time directly from bts::TimeStamp::now() 2018-08-10 18:24:00 -04:00
Michael Harding eb739b33f9 SIM Exchange Settings 2018-08-10 15:49:15 -04:00
John Colvin dc2b0c8efe Merged in mview-spreader-leg-orders (pull request #53)
Mview spreader leg orders

Approved-by: Jake Norbut <jake.norbut@bluetradesys.com>
2018-08-10 16:24:01 +00:00
Jake Norbut 6cc738c1ba can't keept up w/ the version numbers 2018-08-09 20:58:42 -05:00
Jake Norbut e0a2aad2f7 Merged in SPARK-1535 (pull request #54)
SPARK-1535

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-08-10 01:34:16 +00:00
Jake Norbut 2b5c2b9f82 updating notes 2018-08-09 20:33:37 -05:00
Taha Afzal 4b6549ed18 time was not getting initailzied 2018-08-09 19:11:11 -04:00
Jake Norbut 2a9bbbd182 updating notes post merge 2018-08-09 16:16:37 -05:00
Jake Norbut e4d649b245 Merge branch 'prod' of bitbucket.org:bluetradesys/spark into SPARK-1535 2018-08-09 16:15:51 -05:00
Eric Harding f5b114b9ce SPARK-1548 Enable merging live market data with simulator 2018-08-09 16:54:21 -04:00
Jake Norbut 0a7ef4a4cd Adding Expand/Collapse All to the OrderBook tool-well area (and right click menu) 2018-08-09 15:53:52 -05:00
Taha Afzal ee908f2fb8 added payup proto to Trigger 2018-08-09 14:21:44 -04:00
Taha Afzal 4458b8ad68 Removed WAITING_FOR_CXL_ACK the diff bw prod and this is pretty small now 2018-08-09 13:38:45 -04:00
Taha Afzal 816910a649 better end conditon reporting 2018-08-09 12:41:16 -04:00
Kevin Darby 0584dee4cb iceberg can now handle completed - 0 state 2018-08-09 10:43:58 -04:00
Eric Harding 85b4ae091e Merged in SPARK-1410 (pull request #55)
SPARK-1410

Approved-by: Jake Norbut <jake.norbut@bluetradesys.com>
2018-08-09 14:39:23 +00:00
Taha Afzal 0e639d3c50 added exit condition to trigger proto 2018-08-09 10:31:31 -04:00
Eric Harding 1ec82d98e2 SPARK-1410 Bring back ReleaseNotesParade. Comment out until release notes copied to output. 2018-08-09 10:16:02 -04:00
Taha Afzal 595048b778 Ready to test 2018-08-09 10:00:23 -04:00
Eric Harding 6cc1b38358 Update release notes 2018-08-08 17:28:30 -04:00
Eric Harding eb8e5ea353 SPARK-1410 Fix shell browser window 2018-08-08 16:25:06 -04:00
Taha Afzal 56feb8fdd3 trigger exit condition 2018-08-08 14:25:44 -04:00
Eric Harding 17f8fa74ea Unstaged change from previous commit 2018-08-08 14:14:30 -04:00
Eric Harding c876c257da Increase buffer size for trade ticker (on server) 2018-08-08 14:13:04 -04:00
Eric Harding 5ba801185a merge from prod 2018-08-08 13:54:13 -04:00
Eric Harding 0f3169ef05 merge SPARK-1515-OnixS. Updated onixs for CME precision extension 2018-08-08 13:31:41 -04:00
Eric Harding f72753cd77 Onixs debug logging depends on 3 other settings. awesome. 2018-08-08 10:26:59 -04:00
Eric Harding 5182e9c9d4 remove unused file 2018-08-07 14:42:44 -04:00
Jake Norbut 2240b3a85d Updating version under which new features will reside 2018-08-07 10:10:02 -05:00
Jake Norbut e792f3a697 updating notes 2018-08-07 10:08:24 -05:00
Jake Norbut 85581ebf41 Symbol Column filter is now a Discrete values; added new column to saved filter settings 2018-08-07 09:48:44 -05:00
Taha Afzal ea180d8ebc In case of a state of position violation, Limiter lets orders in if they are closing the position 2018-08-06 22:32:26 -04:00
Jake Norbut 1f7f091a51 Adding Last Hour hyperlink which sets the Begin time in Period mode to the Now - 1 hour 2018-08-06 17:27:17 -05:00
Jake Norbut 78be34cdd3 adding Symbol column to the Orderbook; column filter is a regex at the moment, which is not ideal 2018-08-06 16:32:09 -05:00
Jake Norbut b59158ea43 Orderbook rows are now collapsed by default; Orders in Error status can be recreated 2018-08-06 09:57:35 -05:00
Pedro Pinto 297cc43afa Fixed merge of NativeOrder.cpp from prod. 2018-08-06 12:19:35 +00:00
Pedro Pinto 0cf707c47f merge 2018-08-04 04:44:10 -04:00
Pedro Pinto 9937fc7cd2 Updated release notes. 2018-08-03 23:15:01 +00:00
Pedro Pinto f3f53d05c8 Fixed spreader order state update. From the middle of the Atlantic.
Go BTS.
2018-08-03 23:13:30 +00:00
Eric Harding b49b7f01d5 Updated linked onixs version. Not sure how we linked with new headers and old version. 2018-08-03 17:31:23 -04:00
Eric Harding a699865342 SPARK-1515 Add specializations to make things build 2018-08-03 16:54:07 -04:00
John Colvin ee69892006 SPARK-1534 - (fix previous commit) 2018-08-03 15:50:16 -04:00
John Colvin bc279ea1b1 SPARK-1534 mview - show synthetic future-leg working orders in future's row 2018-08-03 15:22:35 -04:00
Michael Harding 1b5f58c572 SparkAdmin: The return of wildcards and other tweaks 2018-08-03 14:16:20 -04:00
Eric Harding bae0b797e9 advance externals pointer for onixs 4.8 2018-08-02 17:15:08 -04:00
Pedro Pinto 9bdec8c552 Added more code to SDK example. 2018-08-02 20:59:58 +00:00
Eric Harding 79a69e29a0 SPARK-1515 Switch MDP3Listener to new templates 2018-08-02 16:37:13 -04:00
Pedro Pinto 38bf38c62d Fixed price conversion for spread leg fill. 2018-08-02 20:22:58 +00:00
Jake Norbut 4e08a43d0c Cpp - updating HO to match RB per Kev 2018-08-02 14:12:13 -05:00
Pedro Pinto 4875a6db25 Changed limit enforcing to use fills to seed limiter. 2018-08-02 17:11:43 +00:00
Pedro Pinto 7f7e1b8483 Fixed file name for SODPosition class. 2018-08-02 15:10:45 +00:00
Pedro Pinto a06c8e5b70 Towards an algo SDK 2018-08-02 14:55:40 +00:00
Pedro Pinto 4f912f99bd release_notes.txt edited online with Bitbucket 2018-08-01 21:18:45 +00:00
John Colvin ae7e1761a7 SPARK-1527 Production client crash (ListBoxEx) 2018-08-01 17:10:30 -04:00
Taha Afzal ff71c0642e Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-08-01 16:15:09 -04:00
Taha Afzal 789a84527d SPARK-1516 2018-08-01 16:14:28 -04:00
Pedro Pinto 2eca514dea Fixed build. 2018-08-01 19:52:59 +00:00
Jake Norbut 4891eea5ba Merged in SPARK-1166 (pull request #52)
SPARK-1166

Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-08-01 19:06:39 +00:00
Taha Afzal 239acc7821 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-08-01 15:04:34 -04:00
Taha Afzal b5ad38e41f SPARK-1516, fills sod cleanup's enablement and time are behind config 2018-08-01 15:04:18 -04:00
Jake Norbut bc36db0480 TimeAndSales - Replacing 444 with calculations made from the the DefaultColumnWidths 2018-08-01 14:03:42 -05:00
Pedro Pinto 749d95df67 Added missing linked libraries to sparklib. 2018-08-01 17:30:19 +00:00
Pedro Pinto 7e28a2192a Moved code to lib. 2018-08-01 17:11:17 +00:00
Pedro Pinto b982c7462c Enabled filtering of orders with expired securities by default.
Delayed the initial security publishing to allow the market data a bit
longer to publish the initial set of securities. This is a work around
the security discovery race mentioned in
https://bitbucket.org/bluetradesys/spark/commits/c52a35e950bf906a19dbe078deb24107e0f16bbd
2018-08-01 16:10:52 +00:00
Pedro Pinto 7356c05de9 Added some really rough architecture documentation. 2018-08-01 15:56:22 +00:00
Taha Afzal af43ca7332 disabling SODs until I put it behind a config 2018-07-31 10:47:55 -04:00
Taha Afzal e87339ff3e merging 2018-07-31 10:39:23 -04:00
Taha Afzal f3555017b9 merging 2018-07-30 15:45:41 -04:00
Taha Afzal 5aad335023 SPARK-1516 sod pos id's 2018-07-30 15:30:58 -04:00
Pedro Pinto 1be9b7556e Changed fill kind enum to be consistent with other kinds. 2018-07-30 18:13:07 +00:00
Jake Norbut cdaba74c06 Fixing RB cpp; moving known good cpps to a different file just so that future cpp updates will update this other file and not the main script 2018-07-30 10:21:52 -05:00
Pedro Pinto c52a35e950 Worked around sim/replay security race condition.
Default to not filtering out unresolved securities.
2018-07-30 14:27:39 +00:00
Pedro Pinto 7915381ec2 Moved to C++ 17. 2018-07-30 13:56:14 +00:00
Pedro Pinto 2a1cf79388 Made fill and order stores silently discard dangling sec refs. 2018-07-30 13:54:12 +00:00
Pedro Pinto 8274cd72d8 Made SecurityDB ignore expired securities. 2018-07-30 13:54:12 +00:00
Taha Afzal 7ff42506af SPARK-1516 sod pos aggregation hooked to time calcs 2018-07-28 22:20:43 -04:00
Taha Afzal 9ca4f85ea1 SPARK-1516 sod pos aggregation done 2018-07-27 20:33:49 -04:00
Jake Norbut b045307f30 updating SI and HG cpp per Taha 2018-07-27 17:23:23 -05:00
Pedro Pinto 60a7b504db SPARK-1530, Iceberg cancels itself (rather than error) if a child is canceled 2018-07-27 22:04:25 +00:00
Jake Norbut 0f62f14a1d Adding Agressor as a column to TaS as well as setting row bg color/opacity based on agg side 2018-07-27 11:17:52 -05:00
Eric Harding 87030dbb88 SPARK-1199 TradeMessage should include AggressorSide 2018-07-26 10:55:45 -05:00
Jake Norbut e209ec59e4 pnl: changing format string for pnl columns from F2 to N0, which removes cents and adds commas 2018-07-26 10:27:02 -05:00
Pedro Pinto 3c7313b65a Minor cleanup. 2018-07-26 14:07:03 +00:00
Jake Norbut 92dbedf28f pnl - FillKind out, Security Type in 2018-07-25 17:36:51 -05:00
Pedro Pinto 00f71ab4a4 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-07-25 21:44:24 +00:00
Pedro Pinto 3e8903bdb6 SPARK-1353, Changed the way we detect old exe reports.
This should allow us to support GTC orders.
2018-07-25 21:43:15 +00:00
Pedro Pinto 0bd57bbd08 Added option to auto-correct CME connection's FIX sequence numbers. 2018-07-25 21:41:54 +00:00
Eric Harding 1ec1ad867a SPARK-1522 add config.xml parsing sdk function 2018-07-25 17:26:34 -04:00
Eric Harding ebd6e795ea Additional metric bucket tweaks 2018-07-25 14:28:31 -04:00
Eric Harding 1b2698d99b tweak query server size metric buckets 2018-07-25 14:13:15 -04:00
Eric Harding 063a4dbb4e SPARK-1199 TradeMessage should include AggressorSide 2018-07-25 13:20:24 -04:00
Eric Harding 8fe151bdb9 Add username to shell latency metric and have it go to nan when shell is not connected 2018-07-25 13:20:24 -04:00
Eric Harding 4d0a9ab56e Merge branch 'prod' of bitbucket.org:bluetradesys/spark 2018-07-25 12:12:55 -04:00
Eric Harding 11e8219861 Hide deleted users from /server_info 2018-07-25 12:12:44 -04:00
Eric Harding 42dcd2e367 update cmakedeps 2018-07-25 12:12:30 -04:00
Jake Norbut 7993f75fb1 security picker - replacing naive comparison logic with the same Comparer mview uses 2018-07-25 10:07:37 -05:00
Jake Norbut 1cddd2bcf3 fixing typos in comment; fings numb from ac 2018-07-25 09:42:41 -05:00
Eric Harding 9f7e5846b8 Remove linebreak in support request log message so description will show up in slack 2018-07-25 10:42:01 -04:00
Eric Harding f7b3aac11a Reduce web apigateway request/response logging to diag level 2018-07-25 10:39:29 -04:00
Jake Norbut ec32101cef pnl: no longer logging when exchanged traded spread has legs with differing cpps 2018-07-25 09:36:39 -05:00
Michael Harding 542dfc97ee Merged docs into master 2018-07-24 17:10:02 -04:00
Jake Norbut 4e0cf68fa3 Pnl - pnl prices should not show in ticks 2018-07-24 09:28:44 -05:00
Jake Norbut 4e9a7d576e Merge branch 'qa' into prod 2018-07-23 19:03:39 -05:00
Jake Norbut ece4090e48 Merge branch 'qa' 2018-07-23 18:52:00 -05:00
Jake Norbut 5e056dfff4 pnl - account for current time in calculating start of day time 2018-07-23 17:18:22 -05:00
Pedro Pinto a238781834 Merge branch 'qa' 2018-07-23 17:25:26 -04:00
Jake Norbut 4029ccf8e6 pnl - using actual mid and not a tick-rounded one 2018-07-23 16:06:49 -05:00
Pedro Pinto 22911d582b Merge branch 'qa' of bitbucket.org:bluetradesys/spark into qa 2018-07-23 20:35:30 +00:00
Pedro Pinto 6ef7a2ccb5 More release_notes 2018-07-23 20:32:40 +00:00
Jake Norbut 737a07cecb added notes 2018-07-23 14:57:45 -05:00
Eric Harding 1cbea3d1ee SPARK-1467 Favorites misbehaving 2018-07-23 15:47:12 -04:00
Pedro Pinto 4dbedfa1f7 Added ops_notes.txt 2018-07-23 19:41:09 +00:00
Pedro Pinto 074f87dd37 Release notes 2018-07-23 15:38:16 -04:00
Pedro Pinto 6ee0ca9589 Tweaked release_notes.txt 2018-07-23 14:48:33 -04:00
Michael Harding 5745c13355 Sim Order Routing 2018-07-23 11:22:51 -04:00
Kevin Darby 5f99edde0e small typo in test, 0.005 vs 0.05 2018-07-20 17:45:50 -04:00
Pedro Pinto d39bc5c73c Merge branch 'qa' of bitbucket.org:bluetradesys/spark into qa 2018-07-20 21:40:50 +00:00
Pedro Pinto 9cb6d5ab88 Fixed up tests to reflect lack of wild cards in Admin UI. 2018-07-20 21:40:44 +00:00
Pedro Pinto 278432a35b Fixed bootstraping of admin data to avoid wild cards everywhere. 2018-07-20 21:37:23 +00:00
Kevin Darby 13c414f301 fix small typo in Taha's test 2018-07-20 17:33:39 -04:00
Eric Harding 34f5265a42 Update test instructions 2018-07-20 17:13:37 -04:00
Pedro Pinto 83103e6dc4 Merge branch 'qa' of bitbucket.org:bluetradesys/spark into qa 2018-07-20 12:54:09 -04:00
Pedro Pinto add631b04d Fixed test configuration. 2018-07-20 12:53:56 -04:00
Pedro Pinto e08dc5dfba Add back the option to run sim without replay. 2018-07-20 12:53:34 -04:00
John Colvin 6a8e995c9c SPARK-1452 Synth grid is not filterable by sec key 2018-07-20 11:41:19 -04:00
John Colvin d7c460ac98 SPARK-1440 Creating > 2 legs from MD View 2018-07-20 11:22:20 -04:00
Eric Harding 7871dc5e4f Update 2 tests' instructions 2018-07-19 21:48:52 -04:00
Eric Harding 1aab1db4ca Update cmakedeps 2018-07-19 21:48:44 -04:00
John Colvin 373187c091 SPARK-1464 Couple of small things in the trigger UI 2018-07-19 18:35:06 -04:00
Jake Norbut 423d127ee9 Updating order book order to test new Recreate funcionality 2018-07-19 17:08:43 -05:00
Jake Norbut 14f306d50d SPARK-1471 Adding FillKind to PnL; also will always pass 0 as the time to md query 2018-07-19 16:38:49 -05:00
John Colvin 2ac73e3671 SPARK-1510 organize orderbook types 2018-07-19 15:42:54 -04:00
Eric Harding 71fe863f1b Add server_info http endpoint to serve http://versions 2018-07-19 15:12:39 -04:00
Pedro Pinto ac47f0246f Merge branch 'master' into qa 2018-07-19 18:41:34 +00:00
John Colvin 8e43f96331 SPARK-1469 Fills Window - add "FillKind" column 2018-07-19 14:11:59 -04:00
Jake Norbut 3187e4134f Merged in SPARK-1461 (pull request #49)
SPARK-1461 - price columns don't update tick format when security becomes known

Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-07-19 18:07:10 +00:00
John Colvin 0331501ce4 fix build 2018-07-19 13:06:16 -04:00
John Colvin bd0f1a6f84 SPARK-1468 FillTupleSource - always use the fill-security-key (as opposed to the order-security-key) 2018-07-19 12:51:19 -04:00
Pedro Pinto 8776b80b07 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-07-19 16:36:30 +00:00
Pedro Pinto f5a72841b4 Tweaked build, hoping to fix jenkins failure. 2018-07-19 16:36:16 +00:00
Taha Afzal f9ada7fca2 manual test for trigger 2018-07-19 12:32:52 -04:00
Pedro Pinto 1cb4f24610 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-07-19 16:05:44 +00:00
Pedro Pinto 021c88f26b Removed obsolete tests. 2018-07-19 16:05:24 +00:00
Jake Norbut 014fa8e291 PnL - fixing bad refactoring job 2018-07-19 11:05:02 -05:00
Jake Norbut 71d54224bb Merged in SPARK-1465 (pull request #51)
SPARK-1465 - adding recreate order functionality to OrderBook window

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-07-19 15:55:07 +00:00
Pedro Pinto bebbf2a0f1 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-07-19 15:48:08 +00:00
Pedro Pinto 7413814e4a Fixed script permissions. 2018-07-19 15:42:49 +00:00
Pedro Pinto 36474ef3ea SPARK-1442, Handling leg fills. 2018-07-19 15:42:10 +00:00
Taha Afzal 974be037fe forgot pushing this merge in 2018-07-19 11:23:56 -04:00
Eric Harding a9ee246436 Share MDConsumer between MDSource and SecuritySrc. Fixes problem with synthetics when nobody calls scan_securities() to do security discovery 2018-07-19 10:44:58 -04:00
Taha Afzal b692742e30 better error messages for TriggerOrder 2018-07-19 10:36:37 -04:00
Taha Afzal c61cbba316 TriggerOrder incorrect assertion 2018-07-19 10:36:37 -04:00
Kevin Darby 4d99ffc86c SPARK-1464
I couldn't get the order price to default to the bid, but sending to John
2018-07-19 10:36:37 -04:00
Eric Harding 52001a55c6 MDConsumer::get_handle() needs to process async work before searching handles 2018-07-19 10:36:37 -04:00
Eric Harding 570dd387d2 MDConsumer::get_handle() needs to check if the handle is a synthetic 2018-07-19 10:36:37 -04:00
Taha Afzal 28a122aa7a TriggerOrder completed 2018-07-19 10:36:36 -04:00
Taha Afzal b2facaecd9 polishing TriggerOrder 2018-07-19 10:36:36 -04:00
Taha Afzal e346858516 2 things left, completed vs cancelled, and price rounding for equality 2018-07-19 10:36:36 -04:00
Taha Afzal be8ca67be5 TriggerOrder handling cancelled state better 2018-07-19 10:36:36 -04:00
Kevin Darby 197e68e357 Trigger order UI 2018-07-19 10:36:36 -04:00
Kevin Darby dfa3e4a38d python... 2018-07-19 10:36:36 -04:00
Taha Afzal 0f7625ff4a Conditional Order mostly done 2018-07-19 10:36:36 -04:00
Taha Afzal 88ab4fbb79 fixing build 2018-07-19 10:36:36 -04:00
Taha Afzal 5cc9b8c875 SPARK-1404 trigger order proto's 2018-07-19 10:36:36 -04:00
Pedro Pinto 187793d47c Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-07-19 13:58:39 +00:00
John Colvin 656c7104f6 fix ticks merge from prod to master 2018-07-18 18:14:24 -04:00
Pedro Pinto 359e01e8bd Merged 2018-07-18 22:07:36 +00:00
John Colvin 2a452d3201 Merge branch 'prod' (ticks) 2018-07-18 17:26:59 -04:00
Eric Harding 806ed427ab convert_security from Security to FixedSecurity needs to always copy tick fraction fields not just when it's glbx 2018-07-18 17:00:34 -04:00
Pedro Pinto 78cefa187a Merge 2018-07-18 16:48:47 -04:00
Pedro Pinto 8531b330dc Made it simpler to run cert. 2018-07-18 20:46:56 +00:00
Jake Norbut 54d9bde6b7 Merged in SPARK-1459 (pull request #48)
SPARK-1459 - order sub type filter not saving

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-07-18 20:23:35 +00:00
John Colvin fe6dabb5fe SPARK-1455 Tick display wrong for ZB, likely others 2018-07-18 15:53:05 -04:00
Jake Norbut f0b089d2e5 SPARK-1465 - adding recreate order functionality to OrderBook window 2018-07-18 09:18:45 -05:00
Pedro Pinto 8979c595a5 SPARK-1142, we now publish leg fills 2018-07-18 13:23:04 +00:00
Eric Harding ba4771aeee Add SIM to platform_for_exchange 2018-07-17 17:30:50 -04:00
Michael Harding 719c1e474b Merged in SparkAdmin (pull request #50)
SparkAdmin

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-07-17 20:21:02 +00:00
Michael Harding 72123a61a9 Merged master into SparkAdmin 2018-07-17 15:59:54 -04:00
Michael Harding 3b1c2dc52b SPARK-1368: better filtering in limits 2018-07-17 15:59:15 -04:00
Eric Harding 0546f0d9fb Move tick data from Glbx to ContractSpec 2018-07-17 15:47:16 -04:00
Pedro Pinto 05f1be77ef Merge 2018-07-17 19:21:32 +00:00
Jake Norbut 79e876e1dc SPARK-1461 - price columns don't update tick format when security becomes known 2018-07-17 13:35:03 -05:00
Michael Harding b6cc413733 SPARK-1368: Limits refinements and fixes 2018-07-17 12:35:26 -04:00
Jake Norbut a5e9f40f01 SPARK-1459 - order sub type filter not saving 2018-07-17 09:45:28 -05:00
Jake Norbut e40dc48fa8 Merged pnl_nits2 into master 2018-07-17 09:07:11 -05:00
Jake Norbut 5aab4312fc merge; fixing merge 2018-07-17 09:05:57 -05:00
John Colvin 9ede4c7736 Merged in exchange-ticks (pull request #46)
SPARK-1455 Tick display wrong for ZB, likely others

Approved-by: Jake Norbut <jake.norbut@bluetradesys.com>
2018-07-17 02:42:37 +00:00
John Colvin b63b0b6303 Merge remote-tracking branch 'origin/master' into exchange-ticks 2018-07-16 22:36:07 -04:00
John Colvin e004580d99 Exchange Ticks - pr edits 2018-07-16 22:24:26 -04:00
Eric Harding 7403057c58 Threading tweak to ShellDiagnosticService 2018-07-16 22:02:45 -04:00
Eric Harding 47730bd3d4 Make cmake happy 2018-07-16 21:59:55 -04:00
Pedro Pinto 9964d2579a Merge remote-tracking branch 'origin/master' into sim_cert_simultaenously 2018-07-16 21:33:56 +00:00
Pedro Pinto 6960ee1a12 Changing replay mechanis in sim to allow for cert and sim md. 2018-07-16 21:33:01 +00:00
Michael Harding 9edde6b8e3 SPARK-1368: Data table width 2018-07-16 15:12:42 -04:00
Michael Harding 8ef02ea4cb SPARK-1368: Moving buttons again 2018-07-16 15:08:57 -04:00
Eric Harding dc99ea6ea4 SPARK-955 add unit test to cover this case 2018-07-16 15:03:56 -04:00
John Colvin 9c6993d70c Exchange Ticks - pr edits 2018-07-16 14:32:20 -04:00
John Colvin c6be4dad17 Exchange Ticks - truncate display-digits 2018-07-16 14:19:43 -04:00
Jake Norbut bd2e2674bf PR suggestion 2018-07-16 13:09:02 -05:00
Michael Harding 71ddcd135b Merged in SparkAdmin (pull request #47)
SparkAdmin

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-07-16 18:03:27 +00:00
Michael Harding bffb7686a8 Merged master into SparkAdmin 2018-07-16 12:58:59 -04:00
Michael Harding a73bf0ce7c SPARK-1370: Set multiple limits to the same value 2018-07-16 12:58:12 -04:00
Pedro Pinto 94c5a1bcd1 SPARK-1156, bootstraped limits for sim exchange. 2018-07-16 14:41:27 +00:00
Pedro Pinto ca2a346054 Work on a new queue. 2018-07-16 13:39:25 +00:00
Pedro Pinto b990923cf5 Fixed helper script. 2018-07-16 13:38:57 +00:00
Eric Harding 8490151844 Merged in SPARK-1456 (pull request #44)
SPARK-1456 Centralized ladder re-center

Approved-by: Jake Norbut <jake.norbut@bluetradesys.com>
2018-07-16 11:23:19 +00:00
Eric Harding 78c8234eef SPARK-1456 ladder re-center 2018-07-16 07:22:34 -04:00
Pedro Pinto 1f1f92d337 SPARK-1156 2018-07-15 00:34:15 +00:00
John Colvin a6426e7a98 SPARK-1455 Tick display wrong for ZB, likely others 2018-07-14 17:48:21 -04:00
Eric Harding dc1a7b3f5d Remove defunct DataPersistor 2018-07-13 17:22:59 -04:00
Pedro Pinto 2a549e551f SPARK-1156 2018-07-13 20:09:42 +00:00
Pedro Pinto c158188557 SPARK-1156 2018-07-13 19:40:32 +00:00
Jake Norbut 17614b663e Merge branch 'master' of bitbucket.org:bluetradesys/spark into pnl_nits2 2018-07-13 14:21:46 -05:00
Pedro Pinto 5e36a22aba Merge 2018-07-13 13:19:01 -04:00
Pedro Pinto 442fbd2888 Updating the Web UI to support the SIM exchange. 2018-07-13 17:15:38 +00:00
Jake Norbut d1975cdd00 misc refactoring 2018-07-13 11:44:50 -05:00
Eric Harding a2c75f08d8 Fix up f# for new exchange. 2018-07-13 12:43:16 -04:00
Pedro Pinto 02a867f8a4 Towards sim exchange. 2018-07-13 16:32:08 +00:00
Jake Norbut adc48d7871 Cpps will be manually maintained; adding helper script to aid in their generation 2018-07-13 11:20:14 -05:00
Michael Harding 33bd089e74 SPARK-1370: Remove wildcards, confirmation modals, SMP 2018-07-12 16:27:49 -04:00
Jake Norbut edcb5a5a24 Changing default day start time to 4:30 as a result of new info from dev call 2018-07-12 13:29:21 -05:00
Jake Norbut 6f39705d4f PnL will now use cpp from config rather than security 2018-07-12 13:26:47 -05:00
Jake Norbut 07377b8cc9 Merge branch 'master' of bitbucket.org:bluetradesys/spark into pnl_nits2 2018-07-12 12:07:08 -05:00
Jake Norbut 77ad9ca011 fixing no UTC to UTC time comparison bug; also, somehow swapped day vs start of day comparison 2018-07-12 12:00:46 -05:00
Pedro Pinto 10f24aa2e9 Towards SPARK-1156 2018-07-12 14:21:48 +00:00
Pedro Pinto 37fc5880ea Ran clang-format. 2018-07-12 13:34:28 +00:00
Eric Harding 910d991d92 SPARK-1448 Commit/cancel 'add to favorites' on focus move 2018-07-11 18:20:41 -04:00
Eric Harding ced8bd9fea CMakeDeps wants to update. ok. 2018-07-11 18:18:04 -04:00
Jake Norbut c5004f46ee SPARK-1458 cpp config proto and defaults 2018-07-11 17:15:34 -05:00
Eric Harding 1deb5d25b0 SPARK-1376 - My Windows : Cancel on escape 2018-07-11 16:45:31 -04:00
Jake Norbut b5950ab8c0 actually save the start of day rather than overwriting it anew each time 2018-07-11 13:04:34 -05:00
Jake Norbut a233451333 add start of day to pnl settings 2018-07-11 12:55:15 -05:00
Pedro Pinto deef8136df Adding script to synch up sdk repo 2018-07-11 12:56:16 -04:00
Pedro Pinto 9dda440a48 Cleaned up sdk. 2018-07-11 16:26:26 +00:00
Eric Harding f22442e665 fix build 2018-07-11 12:23:06 -04:00
Michael Harding 1ba7ceaf6a SparkAdmin: Context menus on menu items 2018-07-11 11:58:02 -04:00
Jake Norbut 54676d5aa9 Adding pnl_calc_type to state proro; tidying up VM 2018-07-11 09:12:06 -05:00
Jake Norbut edf5c78405 part of SPARK-1454; column filters and sort criteria 2018-07-10 16:56:23 -05:00
Eric Harding f621d08f72 SPARK-1437 Simple market data producer sample 2018-07-10 17:41:52 -04:00
Eric Harding 724243c762 Merge branch 'prod' of bitbucket.org:bluetradesys/spark 2018-07-10 17:16:07 -04:00
Eric Harding f70e8de497 Update git_switch_linux to purge before checkout 2018-07-10 17:15:08 -04:00
Pedro Pinto c97e4be79e Added libs to sdk 2018-07-10 19:02:22 +00:00
Taha Afzal 95be0015d6 fixing build 2018-07-10 14:30:11 -04:00
Pedro Pinto cbe8917f28 Fixed unit tests. 2018-07-10 16:02:14 +00:00
Pedro Pinto 653b1c7814 clang build fixes. 2018-07-10 15:37:16 +00:00
Michael Harding 9a1098669e SparkAdmin: SPARK-1447 - Limits Changes 2018-07-10 10:54:40 -04:00
Michael Harding dcf6c69ef9 SparkAdmin: Fix Lazy Nav 2018-07-10 10:41:49 -04:00
Michael Harding fdcd245ef5 SparkAdmin: Reorganize limits code, add dropdown menu control. 2018-07-10 10:32:55 -04:00
Taha Afzal cf9133da8d SPARK-1404 Trigger Order proto's polished 2018-07-10 10:29:34 -04:00
Michael Harding 802501a337 Merged SparkAdmin into master 2018-07-10 09:13:22 -04:00
Michael Harding b9c6f8d309 Merged master into SparkAdmin 2018-07-10 09:13:00 -04:00
Michael Harding ee94f43628 fix build 2018-07-10 09:11:58 -04:00
Eric Harding ed06924df1 Merged in SPARK-1376 (pull request #42)
SPARK-1176 Named Window

Approved-by: Michael Harding <michael.harding@bluetradesys.com>
Approved-by: Jake Norbut <jake.norbut@bluetradesys.com>
2018-07-09 21:45:19 +00:00
Eric Harding b78179ccee SPARK-1376 Tweak feature name, allow remove from context menu. 2018-07-09 17:44:28 -04:00
Michael Harding e0add4cc47 Merged in SparkAdmin (pull request #43)
SparkAdmin Style and Layout

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-07-09 21:04:06 +00:00
Pedro Pinto cd670c4bd1 Fixed subrepo pointers, yet again 2018-07-09 20:45:44 +00:00
Michael Harding acd637000c Spark Admin: Actually using lazy nav 2018-07-09 16:45:19 -04:00
Michael Harding c09f03a922 SparkAdmin: Lazy nav 2018-07-09 16:41:34 -04:00
Jake Norbut f9fbf9c45a SPARK-1435 2018-07-09 15:40:58 -05:00
Eric Harding 5a00c5eb2a SPARK-1376 Save closed named windows with workspace 2018-07-09 16:17:48 -04:00
Eric Harding 74fa41f151 Quick cleanup of methods that show up on 'object's intellisense 2018-07-09 16:17:48 -04:00
Eric Harding 32d5fc2c37 SPARK-1376 Bookmarks launcher module 2018-07-09 16:17:48 -04:00
Eric Harding 1049046d0b SPARK-1176 Named Windows 2018-07-09 16:17:48 -04:00
Eric Harding 1f8e0a1e2b SPARK-1446 Try to add securities to security DB even if they already have an assigned security key 2018-07-09 16:09:35 -04:00
Michael Harding 846f6d80d8 Merged master into SparkAdmin 2018-07-09 12:32:13 -04:00
Pedro Pinto 9819a01e38 Tweaked benchmark code 2018-07-09 14:12:05 +00:00
Taha Afzal d0ad69e259 SPARK-1439 profile hedger 2018-07-08 18:53:48 -04:00
Taha Afzal f0abd13c48 merging from prod 2018-07-08 00:12:05 -04:00
Taha Afzal ea403b7138 cmake 2018-07-07 23:24:23 -04:00
Pedro Pinto 4a94beaa83 Added release_notes.txt 2018-07-06 21:42:37 +00:00
Pedro Pinto 3f03ceb2b5 SPARK-1438, Added location, smp and smp instructuction tags to order. 2018-07-06 21:40:05 +00:00
Pedro Pinto 0dd988fd1e Added to SDK MD sample. 2018-07-06 19:42:40 +00:00
Pedro Pinto 93d0a21c9d Added some instrumentation for timming hedge orders 2018-07-06 16:41:30 +00:00
Pedro Pinto 92b3cd1da0 SPARK-1384, Extension SDK is now part of the build. 2018-07-06 12:29:48 -04:00
Pedro Pinto 8fc42f6193 Re-architecting build. 2018-07-06 12:28:22 -04:00
Pedro Pinto 73d5b44a7f Added generated files to SDK. 2018-07-06 16:25:37 +00:00
Pedro Pinto e47c4ead2a Fixed the damn build 2018-07-06 16:25:37 +00:00
Pedro Pinto 21dfe5ce43 Updated docker subrepo ptr 2018-07-06 16:25:37 +00:00
Pedro Pinto e032dc822f Updated CMakeDeps.cmake 2018-07-06 16:25:37 +00:00
Pedro Pinto 87148b41f0 Moved docker/linux subrepo ptr 2018-07-06 16:25:37 +00:00
Pedro Pinto 68cb21a0a9 Cleaned up logging during unit testing. Somehow this also fixed unit
test errors.
2018-07-06 16:25:37 +00:00
Eric Harding 093ce9a0c3 Update runsparkd and Cmakedeps for sdk re-org 2018-07-06 16:25:37 +00:00
Pete 5003b23f18 moved docker subrepo pointer 2018-07-06 16:25:37 +00:00
Pedro Pinto 0de0ddbf16 SPARK-1384, Extension SDK is now part of the build. 2018-07-06 16:25:37 +00:00
Pedro Pinto 5d79c0c79a Fixed clang-tidy warnings. 2018-07-06 16:25:37 +00:00
Pedro Pinto 8e4d4782ce Re-architecting build. 2018-07-06 16:25:37 +00:00
Pedro Pinto b8bd3944ce Made Exchange simulator better at handling 0 quantity orders. 2018-07-06 16:25:37 +00:00
Kevin Darby 5d3d5251c7 added git_switch_linux.cmd to switch branches on sparkvm so we don't have to unison linux 2018-07-05 15:07:30 -04:00
Taha Afzal f7cee30511 test for n legs 2018-07-05 10:00:05 -04:00
Taha Afzal 98690ee747 ractional hedging test 2018-07-05 00:04:25 -04:00
Taha Afzal 3e14d83dde Merge branch 'prod' of bitbucket.org:bluetradesys/spark into nlegs 2018-07-03 18:54:56 -04:00
Jake Norbut 1fc38234e5 SPARK-1434 - underscore separator for SenderLocationID in audit logs 2018-07-03 09:50:44 -05:00
Taha Afzal 746622161c SPARK-1366 unit tests 2018-07-02 20:33:34 -04:00
Taha Afzal c064cdd215 SPARK-1366 code complete, writing tests now 2018-07-02 18:59:51 -04:00
Michael Harding 625d47d98e SparkAdmin: Data tables and move buttons again 2018-07-02 11:47:02 -04:00
Eric Harding acce1e3f7d SPARK-1376 Need to explicitly ask for direct book maintenance 2018-07-02 11:30:50 -04:00
Taha Afzal 9bdf084838 SPARK-1366 ciruclar buffer for keeping history of drivers complete 2018-07-01 23:40:57 -04:00
Taha Afzal 5132f81bc1 name change to QuoteLegDriver 2018-07-01 20:17:41 -04:00
Taha Afzal ab797a311e QuoterLegDriverData broken into a cpp 2018-07-01 19:48:51 -04:00
Taha Afzal d032b23841 added 'compute_driver' which calculates the driver price/qty from a quoting leg qty - this is now called by both n legs and 2 legs 2018-07-01 18:33:04 -04:00
Taha Afzal 8c68a66ef1 Merge branch 'prod' of bitbucket.org:bluetradesys/spark into nlegs 2018-06-29 19:14:56 -04:00
Taha Afzal d617d1597c SPARK 1432 fractional legs 2018-06-29 18:58:44 -04:00
Michael Harding 8c8f2d3179 SparkAdmin: Update packages 2018-06-29 16:56:48 -04:00
Michael Harding 669ccd5ffc SPARK-1428, SPARK-1430 2018-06-29 10:50:32 -04:00
Michael Harding 12db326f1d SPARK-1429: Remove index pages 2018-06-28 15:52:15 -04:00
Pedro Pinto 625f76e1f4 Made iceberg order type more robust.
We were asserting that completed orders must have non zero fills, but
its easy for an algo to break that so we handle it.
2018-06-28 15:14:52 -04:00
Michael Harding 55fc880b2e SPARK-1421: Accounts and Connections are now selected with checkboxes 2018-06-28 13:56:03 -04:00
Eric Harding 30ca30442a Fix merge error 2018-06-28 11:34:16 -04:00
Eric Harding 802160abf1 merge from prod 2018-06-28 11:28:08 -04:00
Eric Harding ccff3ee160 SPARK-1427 monitor dispatcher background thread on sparkd 2018-06-28 11:24:35 -04:00
Eric Harding 3da1bfaeb1 Metric for latency between spark shell and server 2018-06-28 11:07:45 -04:00
Eric Harding 03eff1f388 Api generated code namespace ambiguity fix. 2018-06-27 16:49:55 -04:00
Michael Harding b53825baa9 SparkAdmin: Preliminary Style and Layout 2018-06-27 12:44:57 -04:00
Eric Harding 1b1c8a7c1d Allow for discontiguous keys in replay md 2018-06-27 11:25:46 -04:00
Pedro Pinto 5206a378ff Fixed stop order price encoding 2018-06-27 11:12:34 -04:00
Pedro Pinto 7d2047d7ce Fixed the shared data problem that was crashing O'Grady. 2018-06-27 11:12:34 -04:00
Taha Afzal 8a43a4d157 SPARK-1416 (reactivated terminal status) 2018-06-27 11:12:34 -04:00
Jake Norbut 230e9e525f SPARK-1409 - slow picker fixed? 2018-06-27 11:12:34 -04:00
Jake Norbut 034318db5e fix early orders unsub - exception was taking out the observable 2018-06-27 11:12:34 -04:00
Pedro Pinto 0758dd6f46 Fixed clang build. 2018-06-27 11:12:34 -04:00
Pedro Pinto 83f9f3375c Fixed crash on client close. 2018-06-27 11:12:33 -04:00
Pedro Pinto 98a6616804 Removed current link in jetfix, it doesn't work well with docker. 2018-06-27 11:12:33 -04:00
Pedro Pinto b46f811cb5 Tweaks to pp custom build environment. 2018-06-27 11:12:33 -04:00
Eric Harding 0065dba0f0 Update commented out logging for dumping all symbols on a market data channel 2018-06-26 17:16:20 -04:00
Eric Harding 078b9d41b1 Allow for discontiguous keys in replay md 2018-06-26 16:37:30 -04:00
Eric Harding 7cf37bb080 SPARK-1407: Config off consolidated book. CMEChannel { book_type: BOOKTYPE_DIRECT } 2018-06-26 12:56:07 -04:00
Pedro Pinto 564cd3e273 Made cme_market_segment_id mandatory in config to avoid mistakes.
Its too easy to forget this value and end up routing orders
incorrectly. Unfortunately mandatory fields are not yet enforced in
config but we have a case to do it in a next cycle.
2018-06-26 15:36:53 +00:00
John Colvin 6d918c0962 SPARK-1418 Remove constraint on creating NLegs spreads 2018-06-25 17:10:04 -04:00
Pedro Pinto 709229ac14 SPARK-1379, Simulator was inverting queue order for bids. 2018-06-25 18:55:08 +00:00
Eric Harding 375786b283 Tweak test to take const& to avoid stepping though constructor 2018-06-25 13:51:12 -04:00
Pete 9e5970c93e checking for Jake. fixes audit log 39= issue 2018-06-25 10:14:48 -04:00
Pedro Pinto ab5fca73f6 Merge remote-tracking branch 'origin/prod' 2018-06-24 20:41:23 -04:00
Eric Harding 840115db03 SPARK-1359 Config key to turn off running market data 2018-06-22 17:31:08 -04:00
Pedro Pinto db7f74f85d Changed permissions in script 2018-06-22 17:20:23 -04:00
Jake Norbut 3f381f248b Merged in pnl_bg_highlight (pull request #41)
SPARK-1167 - colors on PnL

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-06-22 21:05:33 +00:00
Jake Norbut b5a93e4466 PR suggestions 2018-06-22 15:59:18 -05:00
Pedro Pinto 7cd052979e Fixed stop order price encoding 2018-06-22 16:29:45 -04:00
Pedro Pinto 3b3d44d6f6 Fixed the shared data problem that was crashing O'Grady. 2018-06-22 16:22:27 -04:00
Pedro Pinto 1b56ff3327 Fixed stop order price encoding 2018-06-22 16:19:55 -04:00
Pedro Pinto 1f823003d7 Fixed the shared data problem that was crashing O'Grady. 2018-06-22 19:49:45 +00:00
Jake Norbut a64749cd07 SPARK-1167 - colors on PnL 2018-06-22 14:47:03 -05:00
Jake Norbut 3ac6e882d4 SPARK-1417 - script will parse CME trading session list to create a csv of market segment gateways to symbols 2018-06-22 11:15:03 -05:00
Michael Harding 4c239f31f8 SparkAdmin: changes to ui.fsproj 2018-06-22 10:51:08 -04:00
Eric Harding f9759b9533 Merged in SurpriseUnsubscribes (pull request #40)
SPARK-1414 Exception thrown in api subscribe context is handled silently

Approved-by: Jake Norbut <jake.norbut@bluetradesys.com>
2018-06-22 14:21:43 +00:00
Taha Afzal 2b2eaac979 SPARK-1416 (reactivated terminal status) 2018-06-21 19:50:32 -04:00
Taha Afzal 5b5274ab5f 1366 added hedging test 2018-06-21 18:02:08 -04:00
Eric Harding 56fc1019de SPARK-1414 Exception thrown in api subscribe context is handled silently 2018-06-21 16:56:38 -04:00
Pedro Pinto abe7c25bf4 SPARK-1137, Incorporated onix time in measurements. 2018-06-21 18:06:51 +00:00
Michael Harding 43ecea15f3 SPARK-1390: Add build.sh 2018-06-21 13:11:43 -04:00
Jake Norbut 484ad656f9 SPARK-1409 - slow picker fixed? 2018-06-21 11:42:16 -05:00
Jake Norbut 0e92ee15f4 fix early orders unsub - exception was taking out the observable 2018-06-21 11:29:27 -05:00
Jake Norbut 4dcaf224ef SPARK-1409 - slow picker fixed? 2018-06-21 09:43:08 -05:00
Taha Afzal 2d5211ac9b SPARK-1366 n legs 2018-06-20 21:13:02 -04:00
Taha Afzal e62d116a44 SPARK-1366 n legs 2018-06-20 20:42:36 -04:00
Kevin Darby 8c492fdad3 fixed SDK 2018-06-20 17:29:21 -04:00
Michael Harding c3f8d4e729 SPARK-1390: Add Mkdocs template 2018-06-20 16:56:23 -04:00
Pedro Pinto 0deb4fbcf4 Fixed clang build. 2018-06-20 20:00:13 +00:00
Pedro Pinto b8b375eca5 Fixed crash on client close. 2018-06-20 20:00:13 +00:00
Pedro Pinto 4a42238cfb Removed current link in jetfix, it doesn't work well with docker. 2018-06-20 20:00:13 +00:00
Pedro Pinto d4081420ae Tweaks to pp custom build environment. 2018-06-20 20:00:13 +00:00
Michael Harding b811fb6a32 SPARK-1390: Add Mkdocs to the dockerfile 2018-06-20 15:32:10 -04:00
Taha Afzal 27d38cf443 SPARK-1400 spreader on_activate_recovered 2018-06-20 14:22:11 -04:00
Taha Afzal 4dad98a8b2 SPARK-1408 Limiter dupe value crash 2018-06-20 14:22:11 -04:00
Michael Harding 0f78cbc80e SPARK-1214: Add SMP and location 2018-06-20 13:27:41 -04:00
Eric Harding eb3067448d Change default symbol list to match 'DOG' 2018-06-20 12:50:41 -04:00
Eric Harding f4a3256cb8 Update OnixS 4.3.0 to 4.5.2 2018-06-20 12:05:32 -04:00
Eric Harding a2b8d53ebb Add $HOST variable to install_config.json to make installer deploy easier 2018-06-20 11:22:00 -04:00
Jake Norbut b7a3d5a23c cme audit - documenting that script should run in a Chicago time zone 2018-06-20 08:55:47 -05:00
Eric Harding 4f4bfea70f remove obsolete config key 2018-06-19 17:31:32 -04:00
Eric Harding 76d6e37f59 Change default market data recording path to something reasonable instead of /home/bts 2018-06-19 17:06:56 -04:00
Jake Norbut 8e535b0303 SPARK-1391 - audit script now requires output_file specified in command line; by default, will no longer print to console but this can be toggled on via -c 2018-06-19 13:11:56 -05:00
Eric Harding 44887d80e6 sparkd web help indentation 2018-06-19 11:47:26 -04:00
Eric Harding bd63c0798e Merge branch 'prod' of bitbucket.org:bluetradesys/spark 2018-06-19 11:46:43 -04:00
Eric Harding 6e06b3566a Add logging on synthetic security update 2018-06-19 11:43:03 -04:00
Eric Harding ebc7432995 Add market data gap metric. 2018-06-19 11:43:03 -04:00
Eric Harding 33a1762cb7 Add sparkd web command for getting the web UI up in an emergency 2018-06-19 11:40:03 -04:00
Taha Afzal 16e9d100d2 n legged tests 2018-06-19 09:45:19 -04:00
Jake Norbut 5009c4c29a SPARK-1388 - round OB prices to 9 fractional digits when the security is not known 2018-06-19 08:29:20 -05:00
Pedro Pinto f4f1bb7914 Fixed log msg. 2018-06-18 20:56:07 +00:00
Pedro Pinto 82d3e59024 Removed unused config values. 2018-06-18 20:44:25 +00:00
Pedro Pinto 6fe59386df SPARK-1137, We have server performance numbers and they are good. 2018-06-18 20:44:25 +00:00
Pedro Pinto 767cb36856 Ran clang-format. 2018-06-18 20:44:25 +00:00
John Colvin 908958ea3c SPARK-1386 format futures/future-spread-legs with exchange desc (if present) 2018-06-18 15:46:32 -04:00
Kevin Darby 8cef60b5ab top test case, might not have pushed in time 2018-06-18 10:20:44 -04:00
Taha Afzal bbf961ed78 fixing build, .fs file 2018-06-18 08:40:20 -04:00
Taha Afzal f3b8ce8088 adding location to CME User Data 2018-06-17 22:44:37 -04:00
Pedro Pinto 026bda165e Added more data to server side performance tracing. 2018-06-17 15:22:56 +00:00
Pedro Pinto 9727f17edf Tweaks to pp custom build environment. 2018-06-17 15:21:47 +00:00
Pedro Pinto 61b2913a31 Fixed clang build. 2018-06-17 15:21:04 +00:00
Pedro Pinto 0a8bee2c31 Added a couple more digits to exchange price encoding. 2018-06-15 09:51:07 -04:00
Pedro Pinto 2dd8e64272 Perf analysis tools. 2018-06-15 09:51:07 -04:00
John Colvin aa704b8c96 timefilter - make text input filter more flexible 2018-06-14 20:56:19 -04:00
John Colvin 8673b857a7 timefilter - triple-click selects all time-text 2018-06-14 19:56:09 -04:00
John Colvin f83f2c7964 SPARK-1348 time-based period filter requires textbox to lose focus to accept new value 2018-06-14 19:13:18 -04:00
Eric Harding 86d8d7dafb Add seconds_to_recenter and max_open_ladders to UI.conf. Remove seconds and ticks from LadderSettings as it should not be stored per-ladder. 2018-06-14 18:35:15 -04:00
Eric Harding 5363fdd0db Reduce logging level for non-errors in PersistenceServiceServer 2018-06-14 18:08:52 -04:00
Eric Harding d3e7870b9a Fix build with the #ifdef stick 2018-06-14 18:08:32 -04:00
Eric Harding f05692e441 Merged Metrics into qa 2018-06-14 17:38:58 -04:00
Eric Harding 053c460ff6 Market data rate metrics reborn 2018-06-14 17:13:19 -04:00
Eric Harding af7e9dd3a8 Raise WebServer GET request logging to DIAG level 2018-06-14 17:11:57 -04:00
Eric Harding 3e3b6acfd7 Market data QueryServer response time/size. 2018-06-14 17:11:57 -04:00
Eric Harding b75496e665 Add sparkd memory use metric 2018-06-14 17:11:57 -04:00
Eric Harding 03864caa09 Add HistogramMetric type 2018-06-14 17:11:57 -04:00
Eric Harding 1558b79c16 Sparkd promethius metrics 2018-06-14 17:11:57 -04:00
Kevin Darby 57bfe5a85e added manual test cases for algos 2018-06-14 14:50:20 -04:00
John Colvin 3eaeaf0f35 fix LadderSettings equals method 2018-06-14 12:50:02 -04:00
Michael Harding ab3121cd5d Spark Admin: Admin user hack 2018-06-14 11:43:01 -04:00
Taha Afzal ec5bd4a164 SPARK-1332 2018-06-14 11:22:11 -04:00
John Colvin 3877aec09a SPARK-1354 Can't change bid, ask, or last colors in ladder 2018-06-14 10:37:29 -04:00
Jake Norbut fb17596304 updating test text 2018-06-14 08:32:48 -05:00
Michael Harding b36bcc66fb Update PnL manual test 2018-06-14 09:26:53 -04:00
Taha Afzal 73189fbbd8 2 admin limit tests changed slightly 2018-06-13 19:18:04 -04:00
John Colvin 484a9dba12 orderticket priceentrycontrol - update binding source in tickup/down command if has keyboard focus 2018-06-13 17:27:53 -04:00
John Colvin 83f2866604 SPARK-1349 Order Ticket Price Field - DoubleClick 2018-06-13 17:27:53 -04:00
Pedro Pinto 37f40046da Fixed typo in CTI code enum. 2018-06-13 15:48:17 -04:00
Pedro Pinto 2401b9db77 Typo in log msg. 2018-06-13 15:48:17 -04:00
John Colvin a45546690c SPARK-1352 ladder - auto-clear should only reset size to 0 2018-06-13 15:41:20 -04:00
John Colvin bc394ee3b5 SPARK-1350 Fill Window Comes Up Blank From Orders Window 2018-06-13 15:30:55 -04:00
Michael Harding b917fba19a Spark Admin: Assign correct default symbol to new productLimits rows 2018-06-13 14:58:54 -04:00
Michael Harding 63106eb866 SPARK-1245: Wrap Clip Limits help onto two lines 2018-06-13 14:28:27 -04:00
Eric Harding fa79bddb6b Make Spark webserver pipe down a bit 2018-06-13 13:49:34 -04:00
Pedro Pinto 83851c1494 QA assignments. 2018-06-13 10:35:02 -04:00
John Colvin 373f7ee3a1 SPARK-1208 synthetic modification disabled when it should not be 2018-06-12 23:50:56 -04:00
Taha Afzal 2ed8b9caf0 changes to the prehedge tests 2018-06-12 23:16:04 -04:00
John Colvin 470eee431e SPARK-1248 OrderBook - 'last message' cells are always empty 2018-06-12 23:08:00 -04:00
John Colvin e5e6723b3a orderbook - LiveSortingProperties were one step behind SortDescriptions 2018-06-12 22:54:42 -04:00
John Colvin 71be28911b SPARK-1243 crash on server bounce 2018-06-12 19:54:51 -04:00
Michael Harding 8ab3182c21 SPARK-1241: Username.ToLower 2018-06-12 17:33:20 -04:00
Pedro Pinto 508e2d4fcf SPARK-1234, Make sure rejected orders have valid price, quantity 2018-06-12 17:04:29 -04:00
Pedro Pinto 027e434ac9 SPARK-1236, Limit the number of exchange connection attempts. 2018-06-12 16:57:22 -04:00
Michael Harding e9be6d9859 SPARK-1245: Help text 2018-06-12 16:53:25 -04:00
Pedro Pinto 82e63f691c SPARK-1242, Added messaging governor to execution. 2018-06-12 16:01:35 -04:00
Pedro Pinto cb83ad08a6 Perf analysis tools. 2018-06-12 14:14:42 -04:00
Michael Harding e2e78d91c3 SPARK-1240, SPARK-1239: Hide Synthetic, Remove duplicate symbols 2018-06-12 13:21:28 -04:00
Michael Harding 427d03d340 SparkAdmin: Remove onclick from login 2018-06-12 11:29:53 -04:00
John Colvin 32e5111c54 orderbook - remove unused resources in OrderBookView.xaml 2018-06-11 15:11:53 -04:00
John Colvin ef12f81b73 orderbook - fix early-child sorting bug 2018-06-11 15:11:53 -04:00
Eric Harding c0f255f5a7 Spark Admin: Reload page if websocket is disconnected 2018-06-11 14:29:36 -04:00
John Colvin f6861820e4 orderbook - add apply/clear buttons to SubType filter popup 2018-06-11 12:19:26 -04:00
John Colvin 6a3960b33f FillTuple has SecurityMD field (instead of just Security) 2018-06-11 11:44:37 -04:00
Eric Harding e3858fd203 Merged in SPARK-1231 (pull request #39)
Persist should not throw exceptions. Nobody expects that

Approved-by: Jake Norbut <jake.norbut@bluetradesys.com>
2018-06-11 15:29:28 +00:00
Eric Harding 3f1d9307e9 Persist should not throw exceptions. Nobody expects that 2018-06-11 11:22:21 -04:00
Jake Norbut 5f7c2330f3 Ladder recenter on middle-click is now restricted to price column; this previously interferred with a badge's context menu from opening when the ladder was not centered 2018-06-11 09:56:48 -05:00
Jake Norbut 315b2a8b26 SPARK-1229 - EnumCharacterCasingConverter now checks for null 2018-06-11 09:55:29 -05:00
Taha Afzal 29ebfebcbc synthtic orders ressurected from disk show the correct filled price/qty 2018-06-10 23:32:02 -04:00
John Colvin 4fbaca6d05 orderbook - fix child-order filter bug 2018-06-10 17:15:25 -04:00
John Colvin 4d4f706e7c OrderBook - fix sorting bug (must recreate cell in addition to invoking PropertyChanged) 2018-06-10 16:26:46 -04:00
John Colvin 241396e292 clean up FillTupleSource/ObservableDemuxer 2018-06-10 15:59:52 -04:00
John Colvin 4e68c98cfb fix FillTupleSource 2018-06-08 23:36:06 -04:00
Eric Harding 30c1dfd9a7 Merged in SPARK-1123 (pull request #38)
SPARK-1123 on_orders.Replay().RefCount() does not handle late join correctly

Approved-by: Kevin Darby <kevin.darby@bluetradesys.com>
Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-06-09 01:37:48 +00:00
Pedro Pinto a64ca702c9 More tracing tools. 2018-06-08 18:24:07 -04:00
Taha Afzal 0a2b6ce17e SPARK-1212, delayed spreader order cancelling when no active achild orders 2018-06-08 18:21:29 -04:00
Pedro Pinto 660f203132 SPARK-1137, Server side tracing script. 2018-06-08 17:47:23 -04:00
Michael Harding 27f27dbcf1 AdminUI -> Spark Admin 2018-06-08 17:05:54 -04:00
Pedro Pinto 1ac6c8cd40 SPARK-1216, Formatted order prices properly. 2018-06-08 16:33:11 -04:00
Pedro Pinto a13cececa1 Formatted code a bit better. 2018-06-08 16:33:11 -04:00
Pedro Pinto 01d2e88097 Made logging more robust in the presence of config errors. 2018-06-08 16:33:11 -04:00
John Colvin 8f96cd07e3 FillTupleSource - actually update the state with incremental changes 2018-06-08 14:31:11 -04:00
Eric Harding b515e45b23 SPARK-1123 on_orders.Replay().RefCount() does not handle late join correctly 2018-06-08 13:49:22 -04:00
Eric Harding a37e2ead87 Hide status change messages in ladder 2018-06-08 13:44:34 -04:00
Kevin Darby 92ae592d31 Fixed a couple of bugs involving comparing doubles in the ladder and some ladder start crashes. 2018-06-08 13:10:50 -04:00
John Colvin db1cbf589f remove 'Latency' from Logger Subsystems in cs 2018-06-08 10:53:17 -04:00
Eric Harding a561ff3aae Fix merge problem with ObserveOn PR 2018-06-08 10:39:39 -04:00
Eric Harding 3eeab708d2 Merged in ObserveOn (pull request #37)
ObserveOnDispatcher -> ObserveOn + Lower priority so as not to block input

Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-06-08 14:37:20 +00:00
Eric Harding 082056ea3f Fix crash in ErrorReporter because api thread is not STA 2018-06-08 09:53:32 -04:00
Eric Harding e9f3e92f82 Read spark.version for version information 2018-06-08 09:26:21 -04:00
Jake Norbut 152c79a4a9 Badge should never fill in with completion progress as it previously did 2018-06-08 08:05:35 -05:00
Eric Harding db877c859b ObserveOnDispatcher -> ObserveOn + Lower priority so as not to block input 2018-06-08 08:42:23 -04:00
John Colvin 1ec2423ad2 SPARK-1215 fills performance - do not copy dictionaries in FillTupleSource 2018-06-07 21:17:58 -04:00
Taha Afzal 1a88e52a08 subtle change in the QuoterWaitingForAck where book changes on the hedging side make it dissapear, hence order needs to be pulled 2018-06-07 20:06:40 -04:00
Taha Afzal a1b52d083d SPARK-1200 2018-06-07 17:50:09 -04:00
Michael Harding f364317cfa Better window border compromise 2018-06-07 17:10:16 -04:00
Michael Harding f474af1925 Update a few manual tests 2018-06-07 16:09:53 -04:00
Michael Harding 03ac5035fc AdminUI: Minor tweaks and fixes 2018-06-07 16:09:53 -04:00
Michael Harding e78d8208fa AdminUI: Add application name to login page 2018-06-07 16:09:53 -04:00
Pedro Pinto 7f8c591f75 Instrumenting server for perf measurements. 2018-06-07 13:58:02 -04:00
Taha Afzal 7d9685f995 SPARK-1211 cor id 2018-06-07 13:11:27 -04:00
John Colvin 699736ff52 Merged in badge-style-row-height-unification (pull request #35)
SPARK-1204 Ladder/Badge - row height needs to fit different badge styles

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-06-07 16:36:03 +00:00
John Colvin 8d0e7bc467 pr finishing touch 2018-06-07 12:35:03 -04:00
Michael Harding df784e9961 SPARK-1201: Fix and style table headers 2018-06-07 10:21:14 -04:00
Michael Harding af39aab153 AdminUI: Fix default security symbol for new rows 2018-06-07 10:21:13 -04:00
Taha Afzal 885c1ad9f8 SPARK-1152 remove limit in release.... 2018-06-06 23:26:07 -04:00
Eric Harding 91fdd6ec58 Improve generated structs by adding C# 7.2 readonly keyword 2018-06-06 20:21:20 -04:00
John Colvin 3adfd7056a Merge branch 'master' into badge-style-row-height-unification 2018-06-06 18:48:18 -04:00
Kevin Darby 5f845f1355 python 2.7 vs 3.6 blues 2018-06-06 17:56:53 -04:00
Pedro Pinto 5d4bb1d421 More server side perf instrumentation. 2018-06-06 17:53:18 -04:00
John Colvin 9836e46dd9 SPARK-1092 Inconsitencies in changing spreader params / probably lack of persistence 2018-06-06 17:21:42 -04:00
John Colvin bf9d5c2c6d ExecutionStrategyEditor - fix vertical grid line adorner 2018-06-06 17:21:42 -04:00
Taha Afzal ef1c3a7959 SPARK-1159 admin tool strange state 2018-06-06 16:59:35 -04:00
Taha Afzal b07f6aba59 comments, code style 2018-06-06 16:59:35 -04:00
Eric Harding a7b3b0fa6d SPARK-1197 MarketSegmentID 2018-06-06 16:55:03 -04:00
Jake Norbut f7a3b3ebc1 Fixing badge height overlapping level line 2018-06-06 15:49:46 -05:00
Michael Harding d291e4a022 SPARK-1201: Buttons, Transforms, and Stars 2018-06-06 16:13:51 -04:00
Pedro Pinto 292e5575d0 Made sim not look for secure logon file. 2018-06-06 16:06:43 -04:00
Pedro Pinto 1ad57dbf45 Instrumenting server side for performance tracking. 2018-06-06 16:06:43 -04:00
Kevin Darby b25f5556af added python27 to front of the path in vscode.cmd 2018-06-06 15:54:37 -04:00
Kevin Darby c10a4be411 fixing crash on spreader; the VMs get created no matter what security type, they're filtered later 2018-06-06 15:49:40 -04:00
Eric Harding de312c3023 Update c# language version to 7.2 2018-06-06 15:45:48 -04:00
Jake Norbut 93ff56c5cd Merged in badge_perf (pull request #36)
Badge perf

Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-06-06 19:04:17 +00:00
Jake Norbut 5254b7367a PR suggestions; changing summary and description to backings as well since the tooltip was not changing as the lovm updated 2018-06-06 13:52:50 -05:00
Kevin Darby 6d2efb7dc9 clarified min_initial_tick_offset 2018-06-06 13:34:28 -04:00
Jake Norbut 50214741e7 PR - backings for a lazy life 2018-06-06 12:31:22 -05:00
Pete 56950b682d fat fingered 2018-06-06 13:00:45 -04:00
Jake Norbut 83b1bbf087 PR suggestions 2018-06-06 11:44:58 -05:00
Pete 203998e201 change default secure CME login to true 2018-06-06 12:40:25 -04:00
Kevin Darby 59d88d3cc1 colors per Michael 2018-06-06 12:32:13 -04:00
Kevin Darby 13f9717195 Merged in algos (pull request #30)
Algos
2018-06-06 16:15:06 +00:00
Kevin Darby 855e0d7ef9 Merge branch 'master' of bitbucket.org:bluetradesys/spark into algos 2018-06-06 11:46:36 -04:00
Michael Harding 27a1cb277c SPARK-1201: Remove Connections table borders; Add colSpan to table cells 2018-06-06 11:18:59 -04:00
Michael Harding 3107d5f382 SPARK-1201: Add modal create dialog for Users and Accounts 2018-06-06 11:18:59 -04:00
Michael Harding e1940faeac AdminUI: Add Modal Dialog 2018-06-06 11:18:59 -04:00
Jake Norbut a2f22482f6 removing perf testing code; removing unused orders_cache 2018-06-06 09:36:21 -05:00
Taha Afzal ccea4571a6 SPARK-1206 uninitialized limit returned 2018-06-06 10:24:19 -04:00
Taha Afzal 3a72a4a82e Spreader's bookkeepingdata_ptr is a unique_ptr and some stylistic changes to shorten line widths 2018-06-06 10:11:39 -04:00
John Colvin ed6affb6b5 SPARK-1196 synth dialog - security text in column header is wrong (part 2) 2018-06-05 21:17:16 -04:00
John Colvin 2fc208ef74 SPARK-1205 Orderbook filter bug 2018-06-05 19:57:16 -04:00
Jake Norbut 64f86db86b misc cleanup 2018-06-05 18:07:05 -05:00
Jake Norbut 5e960479c7 slow badges no more 2018-06-05 18:01:04 -05:00
John Colvin 837aa51adf SPARK-1204 pr edits 2018-06-05 18:02:32 -04:00
Pedro Pinto d7a7b480ad Persist exchange book in sim even if merge_md is false. 2018-06-05 17:36:39 -04:00
Pedro Pinto d94afe9867 Tweaked performance analysis tools. 2018-06-05 16:59:54 -04:00
John Colvin 410e17aec5 SPARK-1204 Ladder/Badge - row height needs to fit different badge styles 2018-06-05 16:46:50 -04:00
Taha Afzal a8bd99af56 quoter's leg_prop_data is a ref into spreaderbookkeepingdata 2018-06-05 15:00:55 -04:00
John Colvin e11b5928ce SPARK-1181 touch up time filter dialog 2018-06-05 14:34:29 -04:00
Taha Afzal 6bcf352813 deleting cons's and =operators for SpreaderOrder 2018-06-05 14:10:07 -04:00
Michael Harding eeec7b0076 SPARK-1146: Settings Button in the ladder looks consistent 2018-06-05 13:33:18 -04:00
Michael Harding bacdb1c4cd SPARK-1201: Trading and admin permission columns for Users/Accounts Tab 2018-06-05 10:22:25 -04:00
Michael Harding 1e4ad28088 SPARK-1201: Security column in Secutity Limits 2018-06-05 10:03:32 -04:00
Michael Harding e013f93169 SPARK-1201: Show empty add dropdown 2018-06-05 10:03:32 -04:00
Eric Harding 58464b8a0d Automatically apend install_config.json to bts_installer.exe when access via 2018-06-05 08:29:33 -04:00
Taha Afzal 1785f3e34d reducing excessive logging 2018-06-05 07:33:51 -04:00
Taha Afzal 33aeb6b7ba LegPropertyData just contains references to SpreaderBookkeepingData 2018-06-04 22:51:24 -04:00
Michael Harding d8fbfb49e8 AdminUI: Style cleanup 2018-06-04 17:27:27 -04:00
Pedro Pinto 4803c66506 Fixed a few more hardcoded references to .bts 2018-06-04 17:15:29 -04:00
Pedro Pinto 046a0ad9c8 Fixed fable build depencency tracking. 2018-06-04 17:10:36 -04:00
Pedro Pinto 3f292e87da Towards security name formatting in C++. 2018-06-04 17:10:36 -04:00
Eric Harding 7c8a801407 SPARK-1198 - Include config sub path 2018-06-04 17:10:36 -04:00
Eric Harding 4c7949ff8d SPARK-1198 Directory Shuffle 2018-06-04 17:10:36 -04:00
Taha Afzal fdf727a52a fixing clang build warning 2018-06-04 16:45:36 -04:00
Taha Afzal 035911d126 SpreaderChildOrderState now has one cons only 2018-06-04 16:33:20 -04:00
Taha Afzal 58b16a4b2c culled unused hedger functions 2018-06-04 16:33:20 -04:00
Michael Harding 6e9fd68ac4 Merged adminui into master 2018-06-04 16:28:19 -04:00
Michael Harding c5289a5416 Merged master into adminui 2018-06-04 16:12:27 -04:00
Michael Harding b33fe6c8cc SPARK-1155, SPARK-1163 2018-06-04 15:55:48 -04:00
John Colvin bd95b87798 TableUpdateDemuxer - fix potential race bug 2018-06-04 13:01:04 -04:00
Jake Norbut 8132cb003d Merged in single_badge (pull request #33)
SPARK-1141 - Single badge

Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-06-04 16:46:41 +00:00
Jake Norbut 9e59f0c5a2 master -> feature (overwrote John's changes, which we discussed; he will reapply after merge in master) 2018-06-04 11:45:24 -05:00
John Colvin e1e0565fbd SPARK-1196 synth dialog - security text in column header is wrong 2018-06-04 11:43:33 -04:00
Jake Norbut f69ec8d32b SPARK-1195 - GLBX spreas are now formatted by their Security Description 2018-06-04 10:41:59 -05:00
Taha Afzal c3fdf8cb4f logs, odds and ends 2018-06-04 11:12:24 -04:00
Taha Afzal 1670443b0f stylistic changes in the code 2018-06-04 07:10:12 -04:00
Taha Afzal 73fa2b669e cycle_back removed from QuoteLegPriceQuantity 2018-06-04 07:10:12 -04:00
Taha Afzal 2d3f576764 SpreaderHedgerData was unecessarily adding a layer of complexity, gone now 2018-06-04 07:10:12 -04:00
John Colvin 56b855ea83 SPARK-1194 modify ticket should default to original quantity (not working) 2018-06-03 18:12:54 -04:00
John Colvin 8512b40f50 Ladder - use backing-properties instead of detect_property_changes 2018-06-03 14:45:48 -04:00
John Colvin 1983835588 FillsVM - security filter updates itemssource incrementally 2018-06-03 14:45:48 -04:00
John Colvin cf6a9ac4fa upgrade NUnit (3.8.0 -> 3.10.1) in spark_core/spark_sdk 2018-06-03 12:43:11 -04:00
John Colvin c59569310f mview - sort working orders by price to optimize working-orders-summary getter 2018-06-02 19:36:00 -04:00
John Colvin a86b231581 update NUnit package from 3.8.0 -> 3.10.1 2018-06-02 19:27:17 -04:00
John Colvin 46365c4f2e TableUpdateDemuxer - subscribers first notification is an update that adds all existing values 2018-06-02 19:22:27 -04:00
John Colvin c56adb2dc0 SPARK-1184 shell crashed on launch 2018-06-02 16:38:45 -04:00
John Colvin 643482bb09 SecurityFormatter - for unknown security types, don't throw an exception,
return "Unknown-security"
2018-06-02 16:38:45 -04:00
John Colvin 038946eddc DIYGrid - only refresh rows-view once when sorting changes 2018-06-02 16:38:45 -04:00
Pedro Pinto 07348a9ec8 Fixed clang fable build 2018-06-01 17:44:19 -04:00
Eric Harding 0e29a141bf SPARK-1191 security list api 2018-06-01 17:05:52 -04:00
Kevin Darby 002c051c06 make it more clear that detach does not necessarily imply cancellation of the parent 2018-06-01 16:58:18 -04:00
Kevin Darby 42fd7b3f40 added state mutators for base class Pimpl...lovin that c++ 2018-06-01 16:46:28 -04:00
Michael Harding fdefad6a73 AdminUI: Filter Security 2018-06-01 16:33:16 -04:00
Taha Afzal 89ee079320 stylistic changes to the hedger state machine cpp classes 2018-06-01 15:58:46 -04:00
Taha Afzal 5f37bd5d14 got rid of redudnant state in QuotePriceLegState 2018-06-01 15:58:46 -04:00
Taha Afzal 892ba478fd quoter gets some minor cleanup and more comments 2018-06-01 15:58:46 -04:00
Kevin Darby f73d163312 implemented most of Pedro's review, need to do the mutators still 2018-06-01 15:36:06 -04:00
John Colvin ab88cd7920 CVOrderBook - add security discrete values filter 2018-06-01 15:22:01 -04:00
John Colvin 02fedc577a discrete values filter supports incremental updates 2018-06-01 15:22:01 -04:00
John Colvin 87568a6a53 CVOrderBook - improve filter/sort performance by storing parent/children locally 2018-06-01 15:22:01 -04:00
Jake Norbut 8440e144b4 master => feature (again) 2018-06-01 13:39:25 -05:00
Jake Norbut 11cbd7440d taha nits 2018-06-01 13:30:39 -05:00
Kevin Darby ee124401b9 Merge branch 'master' of bitbucket.org:bluetradesys/spark into algos 2018-06-01 13:46:27 -04:00
Kevin Darby ec7417a9c6 added comments to algo order headers and changed wording of a parameter 2018-06-01 13:46:10 -04:00
Eric Harding 536f4703ab Add visual studio perf session files to gitignore 2018-06-01 13:46:10 -04:00
Michael Harding 5f848a36e2 fix ui.fsproj 2018-06-01 13:46:10 -04:00
Michael Harding a7c714591a Fix Webpack config for development 2018-06-01 13:46:10 -04:00
Michael Harding 4655a68593 SPARK-1155 2018-06-01 13:46:10 -04:00
Eric Harding 9677d8996e SPARK-1189 - Windows C++ build is not producing symbols file 2018-06-01 13:46:10 -04:00
John Colvin 3f0a9e442e change UpdateDemuxer to TableUpdateDemuxer, which updates incrementally 2018-06-01 13:46:10 -04:00
Eric Harding f3387b57af SPARK-1183 3-5 1000 lot iceberg orders can lag/lock up the UI 2018-06-01 13:46:09 -04:00
John Colvin abed4bbff6 CVOrderBook - fix typeo that trapped the root_node() fn in an endless loop 2018-06-01 13:46:09 -04:00
Eric Harding bb90429ada Fix problem where you can't see price moves when mouse is over a cell in the ladder 2018-06-01 13:46:09 -04:00
Eric Harding d59bb5ed0d Merged in TactileAdorner (pull request #32)
Quick: Fix problem where you can't see price moves when mouse is over a cell in the ladder

Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-06-01 17:33:13 +00:00
Jake Norbut d30c857e50 master -> feature merge 2018-06-01 11:04:59 -05:00
Eric Harding 37aa7088a9 Add visual studio perf session files to gitignore 2018-06-01 10:30:43 -04:00
Michael Harding b92ad91799 fix ui.fsproj 2018-06-01 10:15:58 -04:00
Michael Harding 6d8ee84813 Fix Webpack config for development 2018-06-01 10:15:58 -04:00
Michael Harding 05ac067b23 SPARK-1155 2018-06-01 10:15:58 -04:00
Eric Harding 8e7163c5c6 SPARK-1189 - Windows C++ build is not producing symbols file 2018-06-01 09:51:20 -04:00
Eric Harding 763beda95c Merged in SPARK-1183 (pull request #34)
SPARK-1183 3-5 1000 lot iceberg orders can lag/lock up the UI

Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-06-01 00:15:43 +00:00
John Colvin 472e2b2f0c change UpdateDemuxer to TableUpdateDemuxer, which updates incrementally 2018-05-31 20:13:01 -04:00
Jake Norbut 2998a2b753 Stop and Stop Orders will now reside withing the correct badge; when a badge contains multiple orders, it will present with a light purple outline; still need to support buy and sell at same level - we'll likely eliminate different badge styles in the end 2018-05-31 17:00:21 -05:00
Eric Harding 036550aaae SPARK-1183 3-5 1000 lot iceberg orders can lag/lock up the UI 2018-05-31 17:20:08 -04:00
John Colvin 4378947e44 CVOrderBook - fix typeo that trapped the root_node() fn in an endless loop 2018-05-31 16:40:34 -04:00
Kevin Darby 1efbc2fd45 Merge branch 'master' of bitbucket.org:bluetradesys/spark into algos 2018-05-31 16:37:00 -04:00
John Colvin bd7a698259 clean up SecurityFormatter.cs 2018-05-31 15:56:30 -04:00
Eric Harding 65341ee35d SPARK-1176 fable build output should go in ~/build/bla. 2018-05-31 13:19:53 -04:00
Jake Norbut e57a3d37f7 relocating where to draw stop orders; need to test against cme cert 2018-05-31 09:37:09 -05:00
Jake Norbut 437e92b361 merging master in feature branch 2018-05-31 08:55:57 -05:00
John Colvin a9c3c41d6e Merged in ui-improvements (pull request #31)
Ui improvements

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-05-31 00:56:02 +00:00
John Colvin 5a12a973f3 pr: finishing touches 2018-05-30 20:54:01 -04:00
Jake Norbut 639b2dfe09 make badge a bit bigger to use available space 2018-05-30 16:45:02 -05:00
Jake Norbut 8cdbf873cd Fixing completion since returning the a double will not really work summing over multiple ordres (0 screws it up); also, no more Opacity 2018-05-30 16:26:33 -05:00
Jake Norbut 7990c97921 Changing default Order column size back to single badge values 2018-05-30 15:25:59 -05:00
Jake Norbut fce22c28d1 hooking up crack 2018-05-30 15:06:40 -05:00
Jake Norbut 339cd017d5 Remove Modify context menu item 2018-05-30 14:56:14 -05:00
Eric Harding 3380d2ba0b Fix problem where you can't see price moves when mouse is over a cell in the ladder 2018-05-30 15:47:30 -04:00
Jake Norbut d18d8dcf37 GetHashCode and Equals 2018-05-30 14:40:45 -05:00
Jake Norbut 6bf628da5f SPARK-1141 - single badge 2018-05-30 13:11:17 -05:00
John Colvin bbcc92c38c pr edit: use working_order_background_brush defined in BTSColors 2018-05-30 13:50:46 -04:00
John Colvin 0ad1f73293 pr edit: add working_orders to OrdersModel 2018-05-30 13:30:02 -04:00
Pedro Pinto 1b100bccf7 SPARK-1175, Picked price of the resting rather than the aggressor 2018-05-30 10:39:25 -04:00
Eric Harding 7a74c5852a Merged in SPARK1139 (pull request #29)
SPARK-1139 Improve ladder performance

Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-05-30 13:37:06 +00:00
Eric Harding 49f3c8b329 Code review feedback 2018-05-30 09:33:39 -04:00
John Colvin 9514a10c27 CVOrderBookRowVM GetHashCode returns order key 2018-05-29 19:32:41 -04:00
Pedro Pinto e6a7db2c61 SPARK-1149, Logging is bounded to 2 files at max, 120MB each. 2018-05-29 17:43:10 -04:00
Taha Afzal f69039c043 SpreaderChildOrderState commented and added state to mantain the out order/qty 2018-05-29 17:38:55 -04:00
Taha Afzal 40d6727b02 QuoteLegPriceQuantityState's cpp added 2018-05-29 17:38:55 -04:00
John Colvin 796c39988f Merged master into ui-improvements 2018-05-29 17:01:12 -04:00
Pedro Pinto 0f2a8cd746 SPARK-1178, Passed build binary dir to fable build script. 2018-05-29 16:31:09 -04:00
John Colvin 55d05ecd12 Merged master into ui-improvements 2018-05-29 16:25:22 -04:00
John Colvin 8b61a63634 new orderbook code clean-up 2018-05-29 16:22:18 -04:00
Kevin Darby 04027ed980 Merge branch 'master' of bitbucket.org:bluetradesys/spark into algos 2018-05-29 15:26:55 -04:00
Kevin Darby 5a850c314c Merge branch 'algos' of bitbucket.org:bluetradesys/spark into algos 2018-05-29 15:26:08 -04:00
Eric Harding 3431ffc480 SPARK-1139 Improve ladder performance 2018-05-29 13:59:11 -04:00
Kevin Darby b566668d83 pushd, a better cd 2018-05-29 11:52:17 -04:00
Jake Norbut c22ce4b886 SPARK-1165 - Fills windows default filtes to since Globex open 2018-05-29 10:19:15 -05:00
Eric Harding eab2852773 Merged in SparkPersist (pull request #28)
SPARK-1162 UserPersist should use ID

Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-05-29 13:15:21 +00:00
Taha Afzal 77d47fd387 header file include culling 2018-05-28 23:44:34 -04:00
Taha Afzal eccd965ce1 adding SpreaderBookkeepingData's cpp file 2018-05-28 22:11:06 -04:00
Taha Afzal ca8b691160 SpreaderLegData broken into h and cpp, adding more comments and tightening some const's 2018-05-28 19:34:06 -04:00
Taha Afzal bcaf65d7c6 code moved for the wrappers around SpreaderorderBuilder into their own cpp's 2018-05-28 15:55:21 -04:00
John Colvin fa7725eba2 OrderBookVM (original) - reduce unneccesary iterations in get_parent_order_vm() 2018-05-28 14:47:34 -04:00
John Colvin 34aa1d20f2 OrderBookVM (original) needs to toggle sort-direction itself 2018-05-28 14:40:08 -04:00
Taha Afzal 85643adcf3 comments and some stylistic changes for the limiter 2018-05-27 22:25:29 -04:00
Taha Afzal 4b9e046046 limits were still using ints for accont ids, fixed that 2018-05-27 22:25:29 -04:00
John Colvin 4bafada602 integrate ICollectionView into OrderBook with 'CVOrderBookVM' 2018-05-27 16:50:07 -04:00
John Colvin 701e883aea DiscreteValuesFilter - guard against null desired-items 2018-05-27 15:42:33 -04:00
John Colvin 7e54eea62f DIYGrid - fix sorting initialization bug (when initial sort comes from Rows.SortDescriptions) 2018-05-27 15:36:36 -04:00
Taha Afzal b2eeddc628 prehedge payup tests 2018-05-26 22:10:50 -04:00
Taha Afzal 9b2a4ca6b1 prehedge payless tests 2018-05-26 19:49:24 -04:00
Kevin Darby 6679695931 fixed cancel state in TopOrder 2018-05-26 17:01:04 -04:00
Kevin Darby 23a8112dd3 Merge branch 'algos' of bitbucket.org:bluetradesys/spark into algos 2018-05-26 15:13:22 -04:00
Kevin Darby b9a07a8e21 toporder, maybe 2018-05-26 15:13:13 -04:00
Kevin Darby 86deaf2edb Join order works and hedges 2018-05-26 15:13:13 -04:00
Kevin Darby fc347250e3 pushing for join to look at joinordervm validation 2018-05-26 15:13:13 -04:00
Kevin Darby aae867a555 doskey, alive and well 2018-05-26 15:13:13 -04:00
Kevin Darby 37a454cf51 behold, TickOrder 2018-05-26 15:13:13 -04:00
Kevin Darby 5162b9f0c0 toporder, maybe 2018-05-26 15:12:55 -04:00
John Colvin 9488620041 OrderUtils - check State.HasCreated/LastChange as well 2018-05-26 13:36:06 -04:00
John Colvin 0ad78b75ca OrderUtils - check HasDef/HasState before accessing Def/State 2018-05-25 21:16:54 -04:00
Taha Afzal ad757495bd comments 2018-05-25 18:42:30 -04:00
Kevin Darby e473c18a30 Join order works and hedges 2018-05-25 18:33:30 -04:00
Taha Afzal c99a3c9fe9 comments 2018-05-25 18:26:23 -04:00
Taha Afzal 640ec0b1ed spreader tests 2018-05-25 18:06:19 -04:00
Jake Norbut c3e2622a22 Ladder - restoring badge context menu and hooking up crack 2018-05-25 18:06:19 -04:00
John Colvin 7d05f76fe4 DIYGrid HighPerformanceRow - InvalidateVisual when DataContext changes 2018-05-25 18:06:19 -04:00
Kevin Darby 7a8a38f89d pushing for join to look at joinordervm validation 2018-05-25 18:04:58 -04:00
Michael Harding 1e54cb1daf Order Type Colors 2018-05-25 18:04:57 -04:00
Eric Harding 7b714018d2 SPARK-1139 Make Combox faster when system is under load (no AllowsTransparency) 2018-05-25 18:04:57 -04:00
Taha Afzal c3371d0971 re-org'ing SpreaderUtils functions into cpp 2018-05-25 18:04:57 -04:00
Taha Afzal bc4643fbf3 spreader tests 2018-05-25 17:33:35 -04:00
Jake Norbut 792801f936 Ladder - restoring badge context menu and hooking up crack 2018-05-25 15:20:36 -05:00
John Colvin dd4ef2429e DIYGrid HighPerformanceRow - InvalidateVisual when DataContext changes 2018-05-25 14:51:45 -04:00
Michael Harding 0af6290566 Order Type Colors 2018-05-25 13:34:12 -04:00
Eric Harding 7e8b804fa0 SPARK-1139 Make Combox faster when system is under load (no AllowsTransparency) 2018-05-25 09:17:00 -04:00
Taha Afzal df769d55e4 re-org'ing SpreaderUtils functions into cpp 2018-05-24 19:38:44 -04:00
Kevin Darby 322e3d81ba doskey, alive and well 2018-05-24 18:24:10 -04:00
Taha Afzal 4ada5a89f4 SPARK-1119 completed 2018-05-24 18:24:10 -04:00
Eric Harding 15aa016aa0 Reduced CPU for cert market data during development 2018-05-24 18:24:10 -04:00
Taha Afzal e77f3169de SPARK-1119 (deleting unused API functions) 2018-05-24 18:24:10 -04:00
Kevin Darby 660c5d3a06 behold, TickOrder 2018-05-24 16:22:19 -04:00
Taha Afzal 1ea65185bd SPARK-1119 completed 2018-05-24 16:19:16 -04:00
Eric Harding 8d068221dc Reduced CPU for cert market data during development 2018-05-24 10:05:22 -04:00
Eric Harding d3f2ecc78e SPARK-1147 Add requited glbx fields to enable this work. 2018-05-23 19:27:37 -04:00
Eric Harding 38f212e633 SPARK-1162 UserPersist should use ID 2018-05-23 18:41:19 -04:00
Taha Afzal 97e73a23b0 SPARK-1119 (deleting unused API functions) 2018-05-23 18:12:55 -04:00
Pedro Pinto 7546c5f2e2 CmakeDeps 2018-05-23 21:43:59 +00:00
Pedro Pinto 324d1a3d74 CMakeDeps 2018-05-23 21:40:21 +00:00
Pedro Pinto f9c15a4d44 SPARK-1126. Hopefully finally nailed FIX price encoding. 2018-05-23 21:40:21 +00:00
Pedro Pinto 68fb8dade4 Cmakedeps. 2018-05-23 21:40:21 +00:00
Jake Norbut ee1230c5f9 Merged in taco_settings (pull request #25)
SPARK-1140 - Emulating the Taco

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-05-23 21:30:37 +00:00
Eric Harding 1c98cfab0d Add user id to UserService responses. Unblocks SPARK-1162 2018-05-23 17:23:25 -04:00
Eric Harding 376e2c3af8 Merged in SPARK1150 (pull request #27)
SPARK-1150 Ladder re-center timer may be leaking

Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-05-23 21:19:46 +00:00
Jake Norbut bbce4bd05c PR suggestions 2018-05-23 16:10:58 -05:00
Jake Norbut c98559beb6 PR suggestions 2018-05-23 16:03:53 -05:00
Eric Harding c13c8ba16f SPARK-1150 Ladder re-center timer may be leaking 2018-05-23 16:14:54 -04:00
Taha Afzal 4d9f26af90 Merged in uint (pull request #26)
Uint
2018-05-23 19:35:42 +00:00
Taha Afzal 23a732d6da SPARK-1119 2018-05-23 15:19:04 -04:00
Jake Norbut 7b2186261a hardening the bevhavior just in case the text hasn't been previously sanitized 2018-05-23 12:41:10 -05:00
Jake Norbut 63d88993a7 Adding an alterntae order size setting; right clicking in a slot will send the alternate order size when it's not 0 2018-05-23 12:35:12 -05:00
Jake Norbut 152c02e45e no more context menu, just directly bring up the modify order ticket on mid click 2018-05-23 10:32:17 -05:00
Eric Harding 7bf4abf38d Add some temporary return data for security_names service 2018-05-23 11:15:05 -04:00
Jake Norbut 3ab3259f9a Badge behavior - Left click remains cancel, right click + drag = move order, mid click = context menu 2018-05-23 09:11:14 -05:00
Eric Harding cf0916379c SPARK-1119 F# part 2018-05-23 09:55:25 -04:00
Eric Harding e8b4567e60 Add request_names to market data service to get a list of symbols for securities 2018-05-23 09:28:36 -04:00
Eric Harding a0e86faa78 Bugfix in c++ service generator. Need full namespace for service with argument types in a different namespace. 2018-05-23 09:23:16 -04:00
Eric Harding 2cbd5510e2 Remove accidental copy of market data. yay c++. 2018-05-23 09:10:00 -04:00
Taha Afzal b9de5602cd SPARK-1119 2018-05-22 22:46:02 -04:00
John Colvin 96369aa5ee Merged in implementing-diy-grid (pull request #24)
Implementing diy grid

Approved-by: John Colvin <john.colvin@bluetradesys.com>
Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-05-22 22:52:06 +00:00
John Colvin 2115ef9b74 pr edits 2018-05-22 18:50:36 -04:00
Jake Norbut 75ee9a954b qty text box - updating behavior name 2018-05-22 17:34:33 -05:00
Jake Norbut 7ed0167c4e Qty button mouse behavior 2018-05-22 17:30:00 -05:00
Taha Afzal b5220050f2 SPARK-1124 2018-05-22 17:07:30 -04:00
Jake Norbut 875f32b980 SPARK-1154 - Order Types in caps on Ladder 2018-05-22 15:31:43 -05:00
Michael Harding e9e0d017aa AdminUI: Improvements 2018-05-22 15:51:21 -04:00
Taha Afzal 1d065678d2 SPARK-1125 (deleting accounts) 2018-05-22 13:36:04 -04:00
Michael Harding bb54a8b448 AdminUI: Improvements 2018-05-22 10:06:39 -04:00
Taha Afzal 0629875c3a SPARK-1124 (deleting users/accounts properly) 2018-05-21 19:59:33 -04:00
John Colvin 38e8463717 OrderBook SimpleTextColumn - check for null/empty text 2018-05-21 19:18:21 -04:00
John Colvin 7a30b58cea HyperlinkCell - fix lingering-underline bug 2018-05-21 19:01:10 -04:00
John Colvin e406f463de disable GlyphRun anti-aliasing for now (doesn't work for all fonts) 2018-05-21 18:55:56 -04:00
Taha Afzal 59d68503a8 SPARK-1124 (deleting users/accounts properly) 2018-05-21 18:45:50 -04:00
John Colvin 909336ccbd pr edits 2018-05-21 17:39:26 -04:00
John Colvin 7d45bc9a36 undo subrepo change 2018-05-21 16:28:16 -04:00
Kevin Darby 23c8b60ea3 spreader post hedge should be < thresh not > 2018-05-21 13:57:36 -04:00
John Colvin 4dc7fb0bea Merged master into implementing-diy-grid 2018-05-21 13:21:11 -04:00
John Colvin 4ea08c09ee DIYGrid - implement OrderBook 2018-05-21 13:19:22 -04:00
Eric Harding 6ec39a9276 SPARK-510 - protobuf defaults require the assignment as well as the DefaultValue (caught in CR) 2018-05-21 11:23:59 -04:00
Eric Harding 4a74066319 Merged in SPARK-510 (pull request #23)
SPARK-510

Approved-by: Michael Harding <michael.harding@bluetradesys.com>
2018-05-21 14:59:05 +00:00
Eric Harding 80fde10cd5 Merged in SPARK-1144 (pull request #22)
SPARK-144 Remove Docking Facility from Launcher

Approved-by: Michael Harding <michael.harding@bluetradesys.com>
2018-05-21 14:57:49 +00:00
Eric Harding 58c3303004 SPARK-510 Launcher settings 2018-05-21 10:47:37 -04:00
Eric Harding c58b6fee77 SPARK-144 Remove Docking Facility from Launcher 2018-05-21 10:34:13 -04:00
Eric Harding b8b284441c SPARK-948 Test CME decimal precision increase 2018-05-21 10:22:50 -04:00
Eric Harding 07e89ff972 Fix build: unused argument 2018-05-21 08:41:07 -04:00
Eric Harding da90ffef12 SPARK-1080 Disable broken Windows syslog sink 2018-05-21 08:40:05 -04:00
Eric Harding b12f7cac6d WebUI: inline some functions which will no-op in javascript 2018-05-21 08:39:36 -04:00
John Colvin c40dfdd171 post-merge cleanup 2018-05-19 21:09:40 -04:00
John Colvin b8163c7f1e Merge branch 'master' into implementing-diy-grid 2018-05-19 18:29:28 -04:00
Pedro Pinto 7693933a7b SPARK-1132, Tag 50 was not being filled in correctly. 2018-05-18 17:23:06 -04:00
Pedro Pinto 675f3e0675 Merge branch 'master' into prod 2018-05-18 17:00:13 -04:00
Pedro Pinto 44454ef4c0 Autocert 2018-05-18 17:00:01 -04:00
Pedro Pinto f6f59adcc5 Merge 2018-05-18 16:58:48 -04:00
Pedro Pinto dad1e40f93 Merged from dev 2018-05-18 16:58:17 -04:00
Pedro Pinto ab950cba91 Merged from dev 2018-05-18 16:57:03 -04:00
Eric Harding 4f32e86fbd WebUI: Remove '*' from Exchange and SecurityType 2018-05-18 15:32:23 -04:00
Pedro Pinto 132516b0a7 Autocert 2018-05-18 15:08:01 -04:00
Eric Harding b95fd9e604 Web: filter accounts dropdown for already added accounts 2018-05-18 13:47:12 -04:00
Eric Harding 72fa852208 Bikeshedding 2/1E100 2018-05-18 13:06:08 -04:00
Michael Harding 609bd05734 SPARK1128, SPARK1129 2018-05-18 13:00:20 -04:00
Eric Harding 9dbf6cafbd Bikeshedding 2018-05-18 12:51:05 -04:00
Eric Harding 3ae7a3976f WebUI: Rename column headers 2018-05-18 12:49:52 -04:00
Eric Harding 5aff485890 SPARK-1127 Confirmation for removing a user 2018-05-18 12:49:52 -04:00
Michael Harding 430511e4a8 SPARK-1130 2018-05-18 12:46:12 -04:00
Michael Harding a2403c643d SPARK-1127 2018-05-18 12:32:51 -04:00
Jake Norbut 1bd2b4c601 adding order router test 2018-05-18 11:30:18 -05:00
John Colvin 4cd6da6c30 didn't save before last commit 2018-05-18 12:26:14 -04:00
John Colvin c2a5be6d67 use id comparer in OrderActivitySummarizer 2018-05-18 12:21:33 -04:00
Michael Harding 9d70906aca SPARK-1127: 2018-05-18 11:38:31 -04:00
Eric Harding 8e0bbbc312 hey, can you quickly make the warning at the bottom of the ladder higher contrast? 2018-05-18 11:37:11 -04:00
Eric Harding e52fc2d196 Add Lens library for help simplify some verbose code in admin gui 2018-05-18 11:21:22 -04:00
Taha Afzal 47b1e8f64d SPARK-1017 2018-05-18 10:47:24 -04:00
Eric Harding ae3b94d6f4 Web UI: Sort accounts *before* selecting first one 2018-05-18 08:51:08 -04:00
Eric Harding 44cf948d5a SPARK-1108 Enums for Humans 3/3 2018-05-18 08:46:35 -04:00
Eric Harding d983db75c4 SPARK-1108 Enums for Humans 2/3 2018-05-18 08:22:33 -04:00
Eric Harding ba02db4e40 SPARK-1108 Enums for Humans 1/2 2018-05-18 08:18:29 -04:00
Eric Harding 68ca16103d Web UI: Sort account list 2018-05-17 17:29:22 -04:00
Michael Harding e36cb26bec fix selectedaccount 2018-05-17 17:26:23 -04:00
Michael Harding 74bc669083 SPARK1100, 1099, 1083 2018-05-17 17:21:05 -04:00
Michael Harding 986f228113 AdminUI: Hide 'deleted' users 2018-05-17 17:21:04 -04:00
Jake Norbut 92b02833df SPARK-1082 - for now on one line, but next sprint we should do it right like John suggested with a MeasureOverride and what not 2018-05-17 15:16:53 -05:00
John Colvin 96754066bd fix ActivityLog categories typeo 2018-05-17 16:06:02 -04:00
Eric Harding c6ed7a46cd SPARK-1117 Entering text at the start of text fields misbehaves 2018-05-17 16:04:35 -04:00
Pedro Pinto 8a05c1dbf7 Fixed fable build some more. 2018-05-17 14:46:18 -04:00
Pedro Pinto 5fcd2a08b2 AutoCert 2018-05-17 14:46:18 -04:00
John Colvin 6483a58351 SyntheticEditorView - adjust RowHeaderWidth to better fit the help texts 2018-05-17 14:39:13 -04:00
John Colvin 69c64b47f1 SPARK-1104 Implement ui to support payup spread param 2018-05-17 14:39:12 -04:00
John Colvin b2fb253969 Refactor PostHedgeOppositeVolumeBasedForceCross 2018-05-17 14:39:12 -04:00
John Colvin 5967a7c1e7 SyntheticEditor - organize cell-param files 2018-05-17 14:39:12 -04:00
Eric Harding b908c576ba SPARK-1116 2018-05-17 14:37:57 -04:00
Eric Harding 56497df68a SPARK-1110 Select first account by default 2018-05-17 14:31:20 -04:00
Kevin Darby b89c561490 spark-1088 fixed SDK for new admin model 2018-05-17 13:40:05 -04:00
Jake Norbut 7794aa89c2 SPARK-1112 2018-05-17 12:08:36 -05:00
Taha Afzal f11215df36 SPARK-1120 and manual tests changed accordingly 2018-05-17 12:38:47 -04:00
Eric Harding 5c2a1fa48e SPARK-1114 - Hide deleted users in UsersService (also don't let them log in) 2018-05-17 12:15:22 -04:00
Eric Harding 29876ec04a SPARK-1097 Can't delete user 2018-05-17 12:15:22 -04:00
Eric Harding 513f7e1310 SPARK-1097 Can't delete account 2018-05-17 12:15:22 -04:00
Eric Harding 867a52024a SPARK-1122 exception when creating new account 2018-05-17 12:15:22 -04:00
Eric Harding 9d6b985400 Admin UI: reduce logging in typescript 2018-05-17 12:15:22 -04:00
Kevin Darby 706b3b151d Pair programming with Jake, spark-1121 2018-05-17 11:58:29 -04:00
John Colvin e1f6c27a94 SPARK-1094 Hedge Ratio should have floating point increments 2018-05-17 11:36:41 -04:00
John Colvin cdaf9e9875 SyntheticEditor - use header_error_text brush 2018-05-17 11:36:41 -04:00
Eric Harding 71993d4a2d SPARK-1106 - Fix up web ui grids a bit 2018-05-17 11:03:55 -04:00
Taha Afzal 84115df405 SPARK-1017 in progress 2018-05-17 11:03:13 -04:00
Jake Norbut 5407279504 OrderBook - should filter for status = working by default; not currently working 2018-05-17 09:30:25 -05:00
Taha Afzal e0b211d002 SPARK-1078 xchange fields length restriction 2018-05-17 07:19:29 -04:00
John Colvin ec6d4936f1 OrderPropertiesEditorVM - fix internal security source 2018-05-16 19:59:03 -04:00
John Colvin 135803b2ce SPARK-1103 fills - move to separate thread 2018-05-16 19:14:40 -04:00
John Colvin 2fb91e8dd9 TimeAndSales - fix icon thread access bug by freezing icon 2018-05-16 18:46:17 -04:00
John Colvin b12fc408b5 SPARK-1102 mview - move to separate thread 2018-05-16 18:44:26 -04:00
Pedro Pinto 7193122a73 Windows screws up X permissions. 2018-05-16 16:44:30 -04:00
Pedro Pinto 1ea8a1c093 Fixed clang build. 2018-05-16 16:43:06 -04:00
Jake Norbut b7200c0581 Merged in hook_badge_style (pull request #21)
SPARK-1082 - badge sytle changes according to settings selection

Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-05-16 20:23:43 +00:00
Taha Afzal 1ab5b65060 SPARK-1111 removal or users and accounts 2018-05-16 16:15:44 -04:00
Jake Norbut ac53734052 PR suggestion 2018-05-16 15:13:38 -05:00
Jake Norbut cdbce6b141 PR suggestion 2018-05-16 15:11:03 -05:00
Pedro Pinto f18235bf96 Ignored src/web when replicating to windows. 2018-05-16 16:01:55 -04:00
Pedro Pinto f8e638d74a Silence is golden. 2018-05-16 16:01:55 -04:00
Pedro Pinto 32dd64fca7 Autocert. 2018-05-16 16:01:55 -04:00
Pedro Pinto 395f686e19 SPARK-1039, Prettier names for default accounts. 2018-05-16 16:01:55 -04:00
Pedro Pinto 62f91d6ebb Guarded against unresolved securities when enforcing limits. 2018-05-16 16:01:55 -04:00
Pedro Pinto 2de2189710 Fixed typo in comment. 2018-05-16 16:01:55 -04:00
Pedro Pinto 51aa3edb17 Fixed typo in log msg. 2018-05-16 16:01:55 -04:00
John Colvin 01fb88a525 Ladder/Ticket - Iceberg orders' "ShowQuantity" is 1 by default 2018-05-16 15:37:57 -04:00
John Colvin cd52dad334 SPARK-1090 New spreader ladders come up without an order type 2018-05-16 15:08:49 -04:00
John Colvin f1a7fdf5cd OrderPropertiesEditorVM - remove unused code 2018-05-16 15:08:49 -04:00
Jake Norbut 96de949ac5 SPARK-1082 - badge sytle changes according to settings selection 2018-05-16 13:55:27 -05:00
Taha Afzal 23a860f7bb fixing broken build 2018-05-16 14:41:08 -04:00
Taha Afzal 2cb539508a merging 2018-05-16 14:31:21 -04:00
Taha Afzal 7059edc0b6 is_active was breaking tests 2018-05-16 14:00:27 -04:00
Eric Harding d417d99357 SPARK-1098 - Create user or account should switch to General tab 2018-05-16 13:59:09 -04:00
Taha Afzal abc400e8c4 SPARK 1046 manual cases for limiter 2018-05-16 13:22:15 -04:00
Eric Harding 52fd21c933 Add robots.txt to spark webserver 2018-05-16 12:54:07 -04:00
Jake Norbut d93e7a9f84 renaming Kevin badge style to Alternate 2018-05-16 11:08:05 -05:00
Taha Afzal bd8b15bbd9 SPARK-1022 completed 2018-05-16 12:03:52 -04:00
Eric Harding 8ac6993fd8 Serve web ui from sparkd/ui for easier production bundle. 2018-05-16 10:52:29 -04:00
Eric Harding b518ae3eca Fix and re-enable web admin build 2018-05-16 10:11:32 -04:00
Taha Afzal 64f19a93ad SPARK-1022 2018-05-15 22:07:06 -04:00
Pedro Pinto dad45f736a Disabled fable build until we figure this out. 2018-05-15 18:16:20 -04:00
Pedro Pinto 2b6a60a79f More fable build fixes, maybe the brokeness is legit. 2018-05-15 18:08:22 -04:00
Pedro Pinto a0306a412d Fixed fable build. 2018-05-15 17:42:55 -04:00
Pedro Pinto afae51012b Handled trace cancelation/correction msgs, fixed SPARK-1105 2018-05-15 17:42:55 -04:00
Eric Harding eaa12d0788 SPARK-592 - Ensure timestamp write is not re-ordered by compiler for multi-cache line depth update 2018-05-15 17:30:59 -04:00
Michael Harding a5c3d5cf09 SPARK-1100: AdminUI 2018-05-15 17:29:42 -04:00
Michael Harding 1d9333724f AdminUI: User account permissions table style 2018-05-15 17:29:42 -04:00
Eric Harding fb48fd82c7 SPARK-592 Market data atomic depth write 2018-05-15 15:28:36 -04:00
Eric Harding bf13115a14 Fix .all file in WebServer 2018-05-15 15:28:36 -04:00
Eric Harding 4bf147eee4 Update market data tests launch.json 2018-05-15 15:28:35 -04:00
John Colvin 39be08432c SPARK-1081 Last Trade Column in ladder is broken 2018-05-15 14:40:19 -04:00
Jake Norbut 0474ea1d53 Ladder - AdornerDecorator surroiunding control is necessary for red border to show errors when LaddersOnThread = true 2018-05-15 13:08:54 -05:00
Jake Norbut 78090ab15c Merged in selector_validation (pull request #20)
SelectoryProperty validation - prevent users with no accounts from sending orders

Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-05-15 17:32:42 +00:00
Jake Norbut 2d37f88553 PR suggestion, thx John! 2018-05-15 12:22:35 -05:00
John Colvin 97447fe634 DataGridFilters - use Esc/Enter KeyBindings and Commit/Clear RoutedCommands 2018-05-15 12:49:27 -04:00
John Colvin e11835d654 SPARK-1087 typing in filter boxes 2018-05-15 12:49:27 -04:00
Taha Afzal 7797cf7435 SPARK-1046 2018-05-15 12:05:29 -04:00
Taha Afzal 71071edd05 SPARK-1022 2018-05-15 12:05:29 -04:00
Taha Afzal 1fb38badfb Temp fix for the Nullable ID vs 0 problem 2018-05-15 12:05:29 -04:00
Taha Afzal bd3399560b SPARK 1022 (more tests, better error messages etc) 2018-05-15 12:05:29 -04:00
Pedro Pinto 1ef5c670bf fable build 2018-05-15 11:58:26 -04:00
Pedro Pinto 095f258edf Disabled broke unit tests. 2018-05-15 11:58:26 -04:00
Pedro Pinto 5da057dc50 Fixed some unused references in Taha's code. 2018-05-15 11:58:26 -04:00
Pedro Pinto 0a84cb0c81 AutoCert 2018-05-15 11:58:26 -04:00
Pedro Pinto d8bc3c757f Autocert 2018-05-15 11:58:26 -04:00
Pedro Pinto 80cbb9869b AutoCert 2018-05-15 11:58:26 -04:00
Jake Norbut 4a517adefb SelectoryProperty validation - prevent users with no accounts from sending orders 2018-05-15 10:11:03 -05:00
John Colvin 18e12f47b8 Merged in ladder-dispatcher-priority (pull request #19)
Ladder dispatcher priority

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-05-15 14:41:41 +00:00
Michael Harding b1687f92e0 AdminUI: aesthetic improvements 2018-05-15 09:14:40 -04:00
John Colvin a9fb92e1d2 Ladder dispatcher priority - default priority fallback is ApplicationIdle 2018-05-14 20:07:22 -04:00
John Colvin 4781f0ba06 Ladder dispatcher priority - rename 'one_hundred' const to 'sample_cycle_size' 2018-05-14 19:15:11 -04:00
John Colvin 122451c20f Ladder Dispatcher Priority - pr edits 2018-05-14 18:41:53 -04:00
Kevin Darby 08efcf9737 workspaces.txt edited 2018-05-14 22:00:38 +00:00
John Colvin fad111314d LadderTimer typeos - actually call timer.start and update elapsed_total 2018-05-14 17:52:07 -04:00
John Colvin 8c368affd9 Merged master into ladder-dispatcher-priority 2018-05-14 17:19:15 -04:00
Michael Harding 730d43bfd8 AdminUI: Increase Similitude 2018-05-14 16:28:09 -04:00
Michael Harding 13e95023af AdminUI: Misc Tag Mapping Fields 2018-05-14 16:28:09 -04:00
Eric Harding 283a90bc50 WebUI Build: Suppress "first time experience". Thanks .NET 2018-05-14 16:06:16 -04:00
Eric Harding 3d33efd7a7 SPARK-1041 - Obfuscate missing user in failed login message. 2018-05-14 16:06:16 -04:00
Jake Norbut 8bf0ed7536 Order Properties Editor - selected account on gui does not revert back to first item in the list when an account change from the web is received 2018-05-14 15:01:59 -05:00
Jake Norbut 1b2c0e03e0 PnL - use account from order instead of fill 2018-05-14 13:07:40 -05:00
Eric Harding 1a7e9776dd SPARK-1041 Redirect login service to authenticate with AdminService 2018-05-14 13:09:49 -04:00
Eric Harding 61d297293d advance docker pointer 2018-05-14 12:26:21 -04:00
Eric Harding e9aec2aad6 Fix npm install to not use --production because it fails to install build dependencies. Also alias doesn't work 2018-05-14 12:25:45 -04:00
Michael Harding 96d76d26b5 AdminUI: update page title and favicon 2018-05-14 11:36:23 -04:00
Eric Harding c0bc773bbc Advance docker pointer. Maybe it will stay that way. haha 2018-05-14 10:44:26 -04:00
Eric Harding c0cfd6e167 Remove obj files from web build. Take a temporary dependency on mono 2018-05-14 10:44:26 -04:00
Eric Harding b44fec29b1 NPM: add --production flag so it doesn't try to change anything 2018-05-14 10:44:26 -04:00
Michael Harding 425b1a82fd GTS->BTS 2018-05-14 10:04:47 -04:00
Eric Harding 2cdf21455e Merged in jsmap (pull request #18)
Replace "obj" with JSMap type which emulates Map but is backed by a plain JS object

Approved-by: Michael Harding <michael.harding@bluetradesys.com>
2018-05-14 13:49:58 +00:00
Michael Harding fd523a645d Fix line endings in docker_update.sh 2018-05-14 09:30:37 -04:00
Eric Harding 32ff893f99 Replace "obj" with JSMap typ which emulates Map but is backed by a plain
JS object
2018-05-14 08:32:19 -04:00
John Colvin 5927be56a2 fix typeo 2018-05-12 17:12:51 -04:00
John Colvin b35cfbd824 add config for Ladder DispatcherTimer 2018-05-11 22:37:44 -04:00
Jake Norbut 3f1d98a613 accounts changed to SelectorProperty 2018-05-11 16:13:01 -05:00
John Colvin e8423ee11e SPARK-1085 Cancel Buys/Cancel Sells button should reflect bid/ask column color 2018-05-11 15:51:20 -04:00
John Colvin 6cca33841a SPARK-1084 Market Break Settings 2018-05-11 15:26:18 -04:00
John Colvin 11468548c2 LadderSettingsView - reduce font cell width (looked too wide for reasonable font sizes) 2018-05-11 14:57:50 -04:00
John Colvin 402abafaca OrderPropertiesEditorVM - use ViewModelBase.SelectorProperty for TimeInForce 2018-05-11 14:40:50 -04:00
Jake Norbut 664a46d438 Changing About Edge to About Spark 2018-05-11 12:11:23 -05:00
Jake Norbut 098fbb1a23 updating p and l test text 2018-05-11 12:11:23 -05:00
Michael Harding 38e32c645d GTS 2018-05-11 12:08:29 -04:00
Kevin Darby 6de4d74d87 audit uploader needs an example file 2018-05-11 10:03:32 -04:00
Michael Harding b27a54e0fb SPARK-1074 2018-05-11 09:43:22 -04:00
Kevin Darby 3040516f84 adding audit uploader for Karl 2018-05-10 17:29:18 -04:00
John Colvin 5262cb4966 Ladder - marketbreak IndexOutOfRange bug 2018-05-10 17:24:16 -04:00
Michael Harding 5a4199bf93 AdminUI: Add Add User button 2018-05-10 17:18:54 -04:00
Michael Harding 4eb2790ee4 SPARK-1077: Saving or changing a user undirties the ui state 2018-05-10 17:18:54 -04:00
Michael Harding 860640cda5 Dont Expect an Obj to be a Map any more 2018-05-10 17:18:54 -04:00
Michael Harding 354c3e04bf AdminUI: Hide User controls if no user is selected 2018-05-10 17:18:54 -04:00
Jake Norbut ac6a5cd88d mysterious control Error when no Error; possibly a WPF validation bug; thx Eric! 2018-05-10 16:10:26 -05:00
Kevin Darby 7384a11070 fix build 2018-05-10 16:09:26 -04:00
Kevin Darby cc4bc755ae placeholder span command 2018-05-10 15:58:06 -04:00
John Colvin a907675a41 SPARK-1070 Disallow creation of synthetics with more than 2 legs 2018-05-10 15:32:54 -04:00
Eric Harding b25121d94a AdminServiceServer should save data to disk when it changes. 2018-05-10 15:10:56 -04:00
John Colvin 70eed209e5 SPARK-1072 MarketView - Qty columns surrounding Bid Ask columns are not sortable 2018-05-10 15:03:20 -04:00
John Colvin 868aa305d1 OrderBadge - FontFamily AffectsRender and updates text 2018-05-10 14:50:32 -04:00
John Colvin 82d59252ec UserSettingsTest 2018-05-10 14:42:12 -04:00
John Colvin aa921a22b7 LadderSettingsView - show badge in Orders column sample cell 2018-05-10 14:42:11 -04:00
Eric Harding a5152fa4cc SPARK-1071 Web UI cannot be accessed from differnet machines. 2018-05-10 13:48:09 -04:00
Pedro Pinto 5208be6cd1 Updated test script. 2018-05-10 12:00:19 -04:00
Pedro Pinto b764726d99 Refactor tests 2018-05-10 11:32:23 -04:00
John Colvin 3170574272 checking in placeholder-settings-test 2018-05-10 10:55:33 -04:00
Taha Afzal 6b557b1f88 disabling limiter until the defaults work properly 2018-05-10 10:28:02 -04:00
Taha Afzal be062cc014 default sec and prod position limits 2018-05-10 10:10:00 -04:00
Taha Afzal f4a2b788ff SPARK-1022 2018-05-10 10:10:00 -04:00
Pedro Pinto b773e801f7 Wasn't calling update on Limiter when new admin available. 2018-05-10 09:45:58 -04:00
Pedro Pinto 7bf099060a Auto cert 2018-05-10 09:45:58 -04:00
Jake Norbut 0120c58ed4 misc refactoring 2018-05-10 08:14:32 -05:00
Jake Norbut c791dd81d6 Merged in more_stops (pull request #17)
SPARK-975 - StopLimits and disallow both price and size changes

Approved-by: Pedro Pinto <pedro.pinto+atlassian@bluetradesys.com>
Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-05-10 12:44:05 +00:00
John Colvin 141e0a64d4 thicken shell window border to make resizing threaded windows easier 2018-05-10 00:49:17 -04:00
Eric Harding ab57fac1a8 WebUI: workaround for lack of structural equality in Pojo types 2018-05-09 22:31:15 -04:00
Eric Harding 0cda9ec9ae Strip query string from request path for font-awesome 2018-05-09 20:27:08 -04:00
Eric Harding fefa659150 WebUI: Limits remove functionality 2018-05-09 20:04:46 -04:00
John Colvin 3ea77974d4 CME gen open time config and TimeFilter RadioButton item 2018-05-09 20:02:01 -04:00
Eric Harding 70e264e693 Remove typescript generation from build.sh 2018-05-09 18:34:16 -04:00
John Colvin 6f9d0c4897 LadderSettings - fix startup race, remove WindowManagerFactory 2018-05-09 17:54:15 -04:00
John Colvin 198d006e6d fix LadderSettings Equals fn 2018-05-09 17:54:15 -04:00
Eric Harding 0cbe1a6988 WebUI: Add Position limits grids 2018-05-09 17:39:14 -04:00
Michael Harding 6bd8f1d1ac AdminUI: User Page 2018-05-09 17:20:10 -04:00
Michael Harding 7fed123f99 AdminUI: select name conflict 2018-05-09 17:18:35 -04:00
Michael Harding c6e468aba4 AdminUI: Update TableControl 2018-05-09 17:02:57 -04:00
Michael Harding 2d96a7e9c4 AdminUI: Obj functions in Reflection 2018-05-09 17:02:24 -04:00
Michael Harding aa345e2dd7 AdminUI: Add new Fields 2018-05-09 17:00:36 -04:00
Michael Harding 0946c528a9 AdminUI: Add password field 2018-05-09 16:53:11 -04:00
Michael Harding 0f8ce93a21 AdminUI: Add TableControl 2018-05-09 16:53:11 -04:00
Eric Harding 5106f99870 WebUI: drop down selection in react-data-grid 2018-05-09 15:03:58 -04:00
Jake Norbut eaa09435c8 SPARK-975 - StopLimits and disallow both price and size changes 2018-05-09 12:49:32 -05:00
John Colvin 18f77215f0 LadderSettings/FontPicker font-size-ticker resize bug 2018-05-09 13:31:12 -04:00
John Colvin 2b29a6ae17 accidentally negated LadderOnThreads 2018-05-09 12:20:15 -04:00
John Colvin 73544c13a7 remove superfluous comment 2018-05-09 12:17:00 -04:00
John Colvin b1f1fe682f Ladder - automatically adjust row_height to fit font size 2018-05-09 12:15:47 -04:00
John Colvin 4aa8818cb0 define DialogSkirt default style in xaml (no partial class) 2018-05-09 12:15:46 -04:00
Eric Harding 048d8d1882 WebUI: actually don't use toObject. It doesn't work 2018-05-09 11:20:30 -04:00
Eric Harding 60adb8b55b WebUI: Use toObject/fromObject instead of hand written enum conversion 2018-05-09 10:15:50 -04:00
Eric Harding da5ebf27c8 VSCode wants this file changed 2018-05-09 10:02:35 -04:00
Eric Harding 5dfd0ffbdd Web UI: Enums IV reveng of the integer 2018-05-08 22:18:33 -04:00
Eric Harding 12e4e3ad8d Enums - Never more than possibly correct. 2018-05-08 14:54:42 -04:00
Eric Harding 115bc16b12 Javascript enums are my nemesis 2018-05-08 14:40:20 -04:00
Eric Harding 7b2a81c51d WebUI: add fields.enumeration to make a dropdown 2018-05-08 13:14:53 -04:00
John Colvin 75ccf5a1af Organize the random assortment of files in core\utils, and core\Utility 2018-05-08 12:40:08 -04:00
Eric Harding 09bc617859 Web UI: Improve enum generation 2018-05-07 23:23:09 -04:00
Eric Harding f4890e0adc Web UI: Additional generated enum functions 2018-05-07 22:58:52 -04:00
John Colvin 1fed3a0ccf Ladder - fix badge drag lag 2018-05-07 18:54:48 -04:00
Taha Afzal 075fbff042 SPAKR-1022, just need to link Limiter to LimitStore now 2018-05-07 18:19:12 -04:00
Eric Harding 88073c6c4f Fix adminservice users test 2018-05-07 17:42:54 -04:00
Eric Harding 53d32753f1 Treat 0 as empty for create_account (adminserviceserver.cpp) 2018-05-07 17:38:50 -04:00
Michael Harding 10e62d1ce7 Add smp_instruction and max_order_rate_per_connection AdminService.proto 2018-05-07 16:30:26 -04:00
Michael Harding 013153add7 AdminUI: Checkbox on same line 2018-05-07 16:30:26 -04:00
Taha Afzal cb53e1eb31 AdminService create user returns AdminServiceCreateEntityResult 2018-05-07 16:30:10 -04:00
Taha Afzal 1d94edd4b9 AdminService update_user wholesale for Admin UI 2018-05-07 16:09:21 -04:00
Eric Harding 7dcb1e67d9 Web UI: Accounts->Exchange Settings 2018-05-07 15:41:49 -04:00
John Colvin 19cc2c4ed8 GlyphContext - don't use obsolete GlyphRun constructor (get dpi_ratio) 2018-05-07 14:40:12 -04:00
John Colvin 83cb900c1c GlyphContext - return null if typeface does not have key for char (avoid KeyNotFoundException) 2018-05-07 14:34:10 -04:00
John Colvin 340c270e8a GlyphContext - Lazy glyph-char-mapping 2018-05-07 14:20:38 -04:00
Eric Harding 1263b91cfd WebUI: Accounts->ClipLimits 2018-05-07 14:16:37 -04:00
Taha Afzal 4e27cc6140 SPARK 1022 organizing files 2018-05-07 13:46:49 -04:00
Taha Afzal 688e0d650e SPARK 1022 organizing files 2018-05-07 13:42:51 -04:00
John Colvin d591420054 LadderSettings - use Subject instead of event for default settings changes (thread safe) 2018-05-07 12:55:06 -04:00
Eric Harding 8b0dad3d61 Fix admin service tests 2018-05-07 11:55:46 -04:00
Eric Harding f0605f1e96 WebUI: Save/Create accounts 2018-05-07 11:44:59 -04:00
John Colvin be523c1848 LadderSettingsDialog - bind to 'use default' check box (not default-tab-selected) 2018-05-07 10:59:07 -04:00
Taha Afzal 6d721fa186 SPARK 1022 adding account wholesale update function for the webUI 2018-05-07 10:33:58 -04:00
Taha Afzal 905f079757 SPARK 1022 adding limit functions 2018-05-07 10:12:09 -04:00
Pedro Pinto e53c186ea9 Batched new secs in a single call to limiter. 2018-05-07 10:10:36 -04:00
Jake Norbut 3d08755ffe Merged in ladder_validation_no_account (pull request #16)
Enforcing account validation at the start in the case a user does not have any accounts from the new AdminService
2018-05-07 14:03:11 +00:00
Eric Harding d3422010df Web UI: refactor scratch to plain account 2018-05-07 09:56:02 -04:00
Your Name 70a768e475 Update fable assets - part2/2 (linux) 2018-05-07 12:57:51 +00:00
Eric Harding 2503dd414f Updated fable assets - part1 2018-05-07 08:53:41 -04:00
Taha Afzal 30f5a56a8d SPARK 1022 getting there 2018-05-07 08:34:52 -04:00
Taha Afzal 3d42ef609e SPARK 1022 75% done 2018-05-07 07:44:06 -04:00
John Colvin 4ad679b65d fix typeos 2018-05-06 22:16:33 -04:00
John Colvin fc8f55930f change ColorPicker from UserControl to Control (improves perf by reducing baml load) 2018-05-06 22:14:25 -04:00
John Colvin 8d7c7fc742 ladder settings dialog tweaks 2018-05-06 20:34:53 -04:00
Eric Harding 3ffa831a4e Javascript: A Comedy of Errors 2018-05-05 22:17:40 -04:00
Eric Harding 3d6326502d DataGrid example code. Import is still giving me trouble. 2018-05-05 13:58:47 -04:00
Eric Harding 8ec01e5930 Admin UI: Accounts->General 2018-05-05 10:53:19 -04:00
Jake Norbut ebe0c1e6ec PR suggestion 2, thx john! 2018-05-04 16:33:50 -05:00
Eric Harding 8bbfcd7734 Web UI - some utils 2018-05-04 17:30:19 -04:00
Jake Norbut 68bd4b5a73 PR suggestion 2018-05-04 16:21:25 -05:00
Michael Harding 16d02f30c5 AdminUI: Fields Controls 2018-05-04 15:57:20 -04:00
Pedro Pinto 1f0cf2b3f5 SPARK-1025, Native orders are tagged with their native type. 2018-05-04 15:05:22 -04:00
Pedro Pinto 9a3b806d9e Fixed build in latest clang. 2018-05-04 15:05:22 -04:00
Pedro Pinto 5e4e56dab6 Fixed the docker subrepo ptr again, taha just stop it 2018-05-04 15:05:22 -04:00
John Colvin 8925db961b LadderSettingsDialog - adjust open position 2018-05-04 14:36:59 -04:00
John Colvin 4b0c22b2fa LadderSettings - Import/Export menu items 2018-05-04 14:32:38 -04:00
John Colvin ed4d50a2fd x:Shared=False for Import/Export icons 2018-05-04 14:22:01 -04:00
Jake Norbut 18a60d854d Enforcing account validation at the start in the case a user does not have any accounts from the new AdminService 2018-05-04 12:59:34 -05:00
John Colvin 44caaf6b4c LadderSettings - fix LadderOrderVM 'DependencySource thread bug' 2018-05-04 12:16:00 -04:00
Michael Harding bc7f1af5be forcing things to exist in JS 2018-05-04 11:53:45 -04:00
Taha Afzal d7b3f5df7c SPARK-1020 Implement OrderRouter 2018-05-04 11:34:47 -04:00
Taha Afzal 31ba0f22e9 SPARK-1020 Implement OrderRouter 2018-05-04 11:31:47 -04:00
Pedro Pinto c0cfb63d7b Moved docker sub repo pointer forward 2018-05-04 09:21:44 -04:00
Eric Harding 945ea04102 WebUI: Typo in DynamicService.ts 2018-05-04 09:20:49 -04:00
Eric Harding b3bf25f81d Web: Fill in defaults for returned proto types 2018-05-04 09:14:41 -04:00
John Colvin 8c4a7ae0f0 Ladder - add\implement market-break-line settings 2018-05-03 20:54:07 -04:00
John Colvin d739d19a42 Ladder - "Last" column actually uses its column settings' background 2018-05-03 17:34:34 -04:00
Eric Harding 663dd92751 WebUI: add accounts page skeleton 2018-05-03 17:30:13 -04:00
John Colvin a14ec89b4f Ladder - badge only sets fontsize once: in format_text 2018-05-03 17:10:37 -04:00
John Colvin e821548a5d Ladder - order badges actually use settings fontfamily/size/color 2018-05-03 17:01:52 -04:00
Eric Harding 0dc6c16e6b Web: Account for 'null' in generated code 2018-05-03 16:54:05 -04:00
Eric Harding 3bb527247d Web: Add react grid and higher level wrapper 2018-05-03 16:54:05 -04:00
Taha Afzal 2290c955ef SPARK-964 2018-05-03 14:56:03 -04:00
Taha Afzal d28e8a2eab SPARK-1034 (cleaing up OrderRouter.cpp) 2018-05-03 14:56:03 -04:00
Eric Harding b8674fcbb9 Update Fable and add ReactGrid 2018-05-03 14:51:46 -04:00
Eric Harding adcaee1480 Web UI: Remove counter. Add Accounts 2018-05-03 14:51:46 -04:00
Pedro Pinto c748149174 Fixed build. 2018-05-03 14:47:21 -04:00
Pedro Pinto 65fd36e9ae SPARK-1018, Code complete. 2018-05-03 14:39:05 -04:00
Pedro Pinto e2a3055046 Added a const qualifyer to order::definition 2018-05-03 14:39:05 -04:00
Pedro Pinto 2d9a61ca15 SPARK-1201, Integrated Limiter with NativeOrder 2018-05-03 14:39:05 -04:00
Michael Harding 0fe6da7eab is_active -> isActive 2018-05-03 14:32:06 -04:00
Michael Harding 01660153c0 WebAdmin: Using real user Data 2018-05-03 14:32:06 -04:00
Michael Harding 95d0d17bcf fix tools/docker_update.sh 2018-05-03 14:32:06 -04:00
John Colvin 9009678f7c LadderSettingsVM - remove redundant fn call 2018-05-03 14:28:37 -04:00
John Colvin d55c52df62 Ladder - actually use column settings font size 2018-05-03 14:27:36 -04:00
John Colvin 24a128d041 SPARK-1027 Empty ladder 2018-05-03 14:15:25 -04:00
John Colvin cd699d5ad7 LadderTactileAdorner draws GlyphRuns and uses settings font/foreground 2018-05-03 13:49:37 -04:00
John Colvin 51b62ac66f LadderSettingsView - vertically center align some text 2018-05-03 13:31:24 -04:00
John Colvin fed0427cbc accidentally negated the LaddersOnThreads toggle (changed it for testing purposes) 2018-05-03 13:23:18 -04:00
John Colvin fb498adffe ladder - actually use column settings' fontweight 2018-05-03 13:02:57 -04:00
John Colvin eb84ba8371 fix FontPicker (plus a little refactoring) 2018-05-03 13:02:57 -04:00
Jake Norbut ab078bdad3 updating test to check for our favorite bts user 2018-05-03 11:43:32 -05:00
Jake Norbut 6f0da78530 Merged in account_service_hookup (pull request #15)
Account service hookup

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-05-03 16:32:15 +00:00
Jake Norbut 8a0daed378 merge redux round 2; fixing user in orderbook to look at user and not login 2018-05-03 11:28:59 -05:00
Eric Harding 2636f5dde4 SPARK-958 Improved code gen 2018-05-03 12:24:11 -04:00
John Colvin 3f1aa74bbb Merged in settings-framework (pull request #14)
Settings framework

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-05-03 16:07:14 +00:00
John Colvin af0152b945 PR edits 2018-05-03 11:57:41 -04:00
Jake Norbut a2d83a79ff resolving merge conflict with master 2018-05-03 10:34:42 -05:00
Taha Afzal e0f2b7e2ed SPARK-1034 (is_valid_session) 2018-05-03 11:00:58 -04:00
Taha Afzal cc919a08d0 SPARK-1034 (connections are correctly read from config now) 2018-05-03 11:00:58 -04:00
Michael Harding b515e55378 WebAdmin: Change Title 2018-05-03 10:55:32 -04:00
Jake Norbut c2b8e9c382 removing the bus too since the moodel doesn't publish anythinng to it at the moment 2018-05-03 09:39:26 -05:00
Jake Norbut e553e5fa1e Since we don't have anhy IDisposables yet, removing the interface; also we're only using the IOBservable, so removing the unused Task 2018-05-03 09:32:38 -05:00
Jake Norbut 1aee8d4920 removing empty file 2018-05-03 09:31:26 -05:00
Michael Harding 07629cadcb Admin-UI: use newer node-sass 2018-05-03 10:02:39 -04:00
Michael Harding f3adfc142d Move FontAwsome 2018-05-03 10:02:39 -04:00
John Colvin 554ff8ea6f rename PropertyUpdateLock to PropertyUpdateGate 2018-05-02 22:48:28 -04:00
John Colvin ff66c3767d fix typeo in class name 2018-05-02 22:33:25 -04:00
Eric Harding af2504b9cd SPARK-1035 Make F# generated code more idiomatic 2018-05-02 20:47:43 -04:00
John Colvin 535b901d6f SPARK-969 design and implement a settings framework (ui) 2018-05-02 20:31:24 -04:00
John Colvin e45952ea2c NotConverter goes both ways 2018-05-02 20:31:24 -04:00
John Colvin f85dbc4b5f add new FontPicker 2018-05-02 20:31:24 -04:00
John Colvin 96d59d1885 add new ColorPicker (remove old one) 2018-05-02 20:31:24 -04:00
John Colvin 9df77f7d70 FileDialogCommands to import/export proto objs 2018-05-02 20:31:23 -04:00
John Colvin 7346b99371 SPARK-969 design and implement a settings framework (no ui yet) 2018-05-02 20:31:23 -04:00
Jake Norbut 47f9c837f0 accounts must be under 12 characters 2018-05-02 17:16:15 -05:00
Jake Norbut 3d88d5b2a6 popuulating order_id and account_id on orders 2018-05-02 16:56:11 -05:00
Eric Harding a9dee31c41 Serve admin UI from sparkd root path 2018-05-02 17:55:05 -04:00
Eric Harding 5abd9879fc immutable.pb.js missing extra {} for exception message 2018-05-02 17:46:42 -04:00
Jake Norbut 6fe3d1664d Start of AdminModel 2018-05-02 16:00:18 -05:00
Pedro Pinto 2edd509635 SPARK-1018, Towards limiting order entry. 2018-05-02 15:53:23 -04:00
Pedro Pinto 7340753458 Added additional methods to OrderRouter.
1) Resolve tags by ids rather than string names
2) Add a reverse route map to help recover when order records are lost.
2018-05-02 15:53:23 -04:00
Taha Afzal 330cd2ba6d SPARK 1-34 almost done 2018-05-02 15:25:57 -04:00
Eric Harding f935c7109f Make this part of build output more obvious 2018-05-02 13:39:28 -04:00
Eric Harding 284ed47ddc Line endings. My eternal foe 2018-05-02 11:20:39 -04:00
Eric Harding e5262ed44f externals 2018-05-02 10:55:31 -04:00
Pedro Pinto 8b812735fb Added account id and user id to Order def for Jake to fill in. 2018-05-02 10:54:05 -04:00
Eric Harding 98524ee1e4 SPARK-1028 2018-05-02 10:48:03 -04:00
Pedro Pinto 141aa3b0ba Fixed race condition that was causing ServiceBridge to crash. 2018-05-02 10:08:36 -04:00
Taha Afzal d81d13b40a fixing build 2018-05-02 10:03:45 -04:00
Taha Afzal cc300a7a2d externals 2018-05-02 09:54:51 -04:00
Taha Afzal a852423f4b externals 2018-05-02 09:37:50 -04:00
Taha Afzal c9e875540b SPARK-1020 getting the connections from config 2018-05-02 09:23:43 -04:00
Taha Afzal b020349fe3 SPARK-1018 OrderRouting cti, account etc done, connection name to be done 2018-05-02 09:23:43 -04:00
Eric Harding bf13877750 SPARK-1031 auto-reconnect websocket more than once 2018-05-01 17:41:57 -04:00
Eric Harding 2408c8dcc7 SPARK-1030 Make authentication real 2018-05-01 17:18:05 -04:00
Jake Norbut 7a329522bb Badges - up to 2 badges side by side, qty in 100s 2018-05-01 15:13:17 -05:00
Eric Harding fca0489085 docker container should restart itself on boot 2018-05-01 16:10:58 -04:00
Eric Harding 70aa95ba36 advance docker pointer 2018-05-01 16:10:45 -04:00
Eric Harding d36b2c6dab SPARK-1028 - these files need to be here until the next version of paket 2018-05-01 16:10:38 -04:00
Kevin Darby 32a9a3c425 badge wars 2018-05-01 14:29:57 -04:00
Pedro Pinto bd15bb43fe Removed assertion that a FIX session must exist for inactive orders. 2018-05-01 14:12:16 -04:00
Your Name ff49178dff SPARK-1028 Update web UI build script to produce full bundle on linux. Also +x 2018-05-01 17:59:46 +00:00
Eric Harding d9f1c17053 Add AdminService to Imports.fs. Remove non-generated HelloService definition. 2018-05-01 11:29:28 -04:00
Eric Harding 55dbccfb35 Advance externals pointer (again) 2018-05-01 10:23:54 -04:00
Eric Harding 630a7aef17 SPARK-1000 Complete code generator for .proto->.ts->.js 2018-05-01 09:43:47 -04:00
Taha Afzal eca65db215 SPARK-1013 adding exchange data to boostrap data 2018-04-30 18:19:53 -04:00
Taha Afzal 8214f838b4 accidentally had some test proto's in AdminService 2018-04-30 18:19:53 -04:00
Taha Afzal 270e882c04 hooking admin services to the stream 2018-04-30 18:19:53 -04:00
Taha Afzal e3ca3143be SPARK-1013 moving the service helper to its own place 2018-04-30 18:19:53 -04:00
Kevin Darby 43e68cd43c slightly better badges; I think the multi-badge idea might be inherently flawed 2018-04-30 18:00:19 -04:00
Michael Harding 242784ab3d add docker_update.sh 2018-04-30 17:03:18 -04:00
Eric Harding 71913cfe83 SPARK-1000 Add DynamicService.ts and initial generator template 2018-04-30 16:10:21 -04:00
Eric Harding ec7a4df5ee Remove underscore restiction on qualifier in ApiServerInterop 2018-04-30 15:55:28 -04:00
Pedro Pinto be918fc3b1 Changed how we define the FIX connections used by spark.
All connections present in the JetFIX key will now be used, the
SparkConnection key is deprecated. Actual selection of connection will
be done through the Admin model.
2018-04-30 15:12:41 -04:00
Pedro Pinto a5421dbe2d SPARK-1026, briding Admin Service to Order Manager. 2018-04-30 14:23:44 -04:00
Taha Afzal 450a7a8c86 SPARK-1013 hooking OrderRouter to new model 2018-04-30 07:47:34 -04:00
Taha Afzal 431bed6819 SPARK-1013 bootstrapping with good values 2018-04-28 22:34:37 -04:00
Eric Harding 02cf1fbed9 Add web api build script 2018-04-28 14:50:31 -04:00
Eric Harding 6b3a88905c merge from JS branch 2018-04-27 17:24:52 -04:00
Eric Harding fc5ebd2cb0 SPARK-1000 Add template for typescript generation. 2018-04-27 16:50:53 -04:00
Taha Afzal 703d03d24a db name change 2018-04-27 15:10:57 -04:00
Taha Afzal ed4fdf4284 SPARK-1013 more tests 2018-04-27 14:40:21 -04:00
Pedro Pinto 10252ba7c0 SPARK-1019, Towards proper order routing 2018-04-27 10:28:22 -04:00
Taha Afzal 49e462b54d SPARK-1013 tests, more to follow 2018-04-27 07:40:05 -04:00
Michael Harding 9bd6c53642 WebUI: add initial Users page 2018-04-26 17:04:45 -04:00
Eric Harding 27940b65ee Web UI - simplify left side menu code 2018-04-26 14:18:13 -04:00
Taha Afzal 7db16e87f4 SPARK-1013 service is complete 2018-04-26 14:00:25 -04:00
Eric Harding 9929f38f4d fix typo 2018-04-26 13:44:03 -04:00
Eric Harding ccef457e41 Anon interface is more type safe than createObj 2018-04-26 13:43:22 -04:00
Eric Harding f169991241 Add UglifyJS to webpack config. This reduces release bundle to 620k->150.gz 2018-04-26 13:42:52 -04:00
Taha Afzal 15c8ecc3e6 SPARK-1013 proto name changes 2018-04-26 12:36:11 -04:00
Eric Harding dfbc319926 Call 'HelloService' on the spark server for 'home' as sample 2018-04-26 12:15:18 -04:00
Eric Harding 6541ca2685 Add test for multiple calls to the same service 2018-04-26 12:14:36 -04:00
Taha Afzal a3b94a3cf3 SPARK-1013 user account permissions 2018-04-26 11:44:11 -04:00
Michael Harding 5fbdedfdca Login Classname 2018-04-26 10:50:51 -04:00
Michael Harding 25c793e232 Login is a form again 2018-04-26 10:50:51 -04:00
Michael Harding e141800e60 Login Message 2018-04-26 10:50:51 -04:00
Michael Harding b15f4cebf1 Logout Button 2018-04-26 10:50:51 -04:00
Taha Afzal a444e71f70 SPARK-1013 helper functions on the admin data 2018-04-26 10:29:53 -04:00
Taha Afzal ed1b3aca92 SPARK-1013 helper functions on the admin data 2018-04-26 07:30:48 -04:00
Taha Afzal a8aa62aaaa SPARK-1013 helper functions on the admin data 2018-04-25 20:11:32 -04:00
Taha Afzal 245b48cb0a SPARK-1013 implementing more API functions 2018-04-25 18:54:33 -04:00
Eric Harding 3dc8dd7acb SPARK-958 APIGateway.cpp RPC handler 2018-04-25 18:01:05 -04:00
Jake Norbut ba4c04f55a badge full vertical height 2018-04-25 13:49:58 -05:00
Taha Afzal 799f06247d SPARK-1013 moving admin data functions into its own util class 2018-04-25 12:56:17 -04:00
Taha Afzal e4b155b270 SPARK-1013 (changing namespaces) 2018-04-25 12:56:17 -04:00
Jake Norbut fcffe2ad11 Badges - going to a version with () for seels 2018-04-25 08:13:33 -05:00
Eric Harding ce44f015e5 Remove underscore restiction on qualifier in ApiServerInterop 2018-04-25 09:09:07 -04:00
Eric Harding f3a2525b8d Typescript shared javascript's flawed notion of 'this'. 2018-04-24 22:19:31 -04:00
Eric Harding 783a71217f Fix typescript unit tests... maybe? 2018-04-24 21:22:55 -04:00
Eric Harding 49d16a3e03 Typescript does not let me type 'export' in bts_assert.ts for no discernable reason. 2018-04-24 17:33:16 -04:00
Eric Harding 9f624d54b3 merge 2018-04-24 15:41:27 -04:00
Eric Harding 643cd33762 Web: Fix jest unit tests. Inject WebSocket from test code 2018-04-24 15:39:23 -04:00
Eric Harding cdc0831ca6 Change typescript output path to fix .d.ts is a source file error 2018-04-24 15:38:08 -04:00
Eric Harding 40d808ed7a SPARK-958 encode request to server 2018-04-24 15:38:08 -04:00
Michael Harding 2eb1468781 Eric's login changes 2018-04-24 15:31:52 -04:00
Kevin Darby d223929caa don't need GC thanks to the CompositeDisposable 2018-04-24 13:57:52 -04:00
Jake Norbut c6783383ef Badges - be able to discern order type from the badge at a glace per pedro + kevin 2018-04-24 13:57:52 -04:00
Eric Harding 9b776c52f7 Commit updated cmakedeps.cmake 2018-04-24 13:57:52 -04:00
Kevin Darby 627f228e4e don't need GC thanks to the CompositeDisposable 2018-04-24 13:56:22 -04:00
Michael Harding 720695b613 The Page is dead, long live the Page 2018-04-24 13:24:20 -04:00
Jake Norbut c7e89a8e0a Badges - be able to discern order type from the badge at a glace per pedro + kevin 2018-04-24 11:46:07 -05:00
Kevin Darby 1704abcd47 Merge branch 'prod' of bitbucket.org:bluetradesys/spark into prod 2018-04-24 12:44:35 -04:00
Eric Harding 3ba69bfdbc Commit updated cmakedeps.cmake 2018-04-24 12:44:13 -04:00
Kevin Darby d8ba3e1198 reduce logging for demo 2018-04-24 12:44:11 -04:00
Kevin Darby 2b4ee75393 exposed immutable in sdk and added ToString() => _impl.ToString()
made a slightly better async model in sdk
2018-04-24 12:38:18 -04:00
Taha Afzal eaf6e27c56 SPARK-1013 (moving files) 2018-04-24 12:30:06 -04:00
Taha Afzal d104a6b3b7 SPARK-1013 in progress 2018-04-24 12:05:35 -04:00
Taha Afzal f188869413 SPARK-1013 in progress 2018-04-24 11:35:27 -04:00
Taha Afzal 6c9ec7238d SPARK-1013 in progress 2018-04-24 10:58:56 -04:00
Taha Afzal d2fb9f2b7b SPARK-1013 in progress 2018-04-23 23:21:34 -04:00
John Colvin dad7fe654a Merged master into prod 2018-04-23 20:21:54 -04:00
John Colvin f6522db4f1 SPARK-1014 Timebox "start immediately" needs 500 ms delay 2018-04-23 20:08:08 -04:00
John Colvin 5ca1c87ba8 Merged master into prod 2018-04-23 19:49:41 -04:00
John Colvin c05be5e6a1 synthman - fix resource-created-on-a-different-thread crash 2018-04-23 19:41:08 -04:00
John Colvin 9f4bed9cfe fix synthetic editor popup crash 2018-04-23 19:17:25 -04:00
John Colvin e1ccbfb672 TextUtils - change default typeface to Segoe UI 2018-04-23 17:24:54 -04:00
Kevin Darby ef65163ed8 reduce logging for demo 2018-04-23 17:21:39 -04:00
Pedro Pinto fa290833ce Downgrading exchange sim log messages. 2018-04-23 16:48:17 -04:00
Pedro Pinto 8b75a6fdc3 Some work to facilitate CME certification. 2018-04-23 16:48:17 -04:00
John Colvin 4df93163f7 mview - do not overwrite initial sorting 2018-04-23 16:16:22 -04:00
John Colvin 5867fba95d DIYGrid - initialize sorting properly 2018-04-23 15:48:23 -04:00
Taha Afzal 1f68d1d7a0 SPARK-1013 in progress 2018-04-23 15:33:06 -04:00
Eric Harding 050057e43f Web: Fix jest unit tests. Inject WebSocket from test code 2018-04-23 15:07:14 -04:00
Eric Harding 4a327411d4 Web: More idiomatic use of Cmd.ofPromise 2018-04-23 14:26:37 -04:00
Eric Harding 62bc828e79 Web UI: Handle login response from server 2018-04-23 13:45:38 -04:00
Eric Harding cb9a9bdd92 Web UI: Contact server for login information 2018-04-23 13:04:03 -04:00
Taha Afzal 5ac21f14fb SPARK-1013 in progress 2018-04-23 12:49:57 -04:00
John Colvin 3cc78e6f72 fills - use DIYGrid 2018-04-23 11:57:39 -04:00
Jake Norbut a4091cc47f Merged in stop_orders (pull request #13)
Stop orders

Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-04-23 15:21:42 +00:00
Eric Harding e61be98c61 WUI: fix import 2018-04-23 11:03:34 -04:00
John Colvin 9413e89ce5 mview - remove unused xaml #DIYGrid 2018-04-23 10:43:41 -04:00
Taha Afzal a1ba9579fc SPARK-1013 2018-04-23 08:07:52 -04:00
John Colvin 59467becf9 DIYGrid - fix column-reverse-sort bug 2018-04-22 20:40:14 -04:00
John Colvin 1073ff84e9 mview - some cols weren't updating #DIYGrid 2018-04-22 20:39:28 -04:00
John Colvin d819e440dd DIYGrid - render text with GlyphContext 2018-04-22 19:49:41 -04:00
John Colvin d76f465086 DIYGrid - mview commands 2018-04-22 17:07:24 -04:00
John Colvin ca6e11715d DIYGrid - sorting 2018-04-22 12:28:16 -04:00
John Colvin 2c976f0ad1 TimeAndSalesView - add AdornerDecorator #DIYGrid 2018-04-22 12:26:01 -04:00
John Colvin 9e8e10fce8 DIYGridAnimationAdorner - only InvalidateVisual when necessary 2018-04-22 12:26:01 -04:00
Taha Afzal ac5df69c67 user model service API 2018-04-22 10:20:40 -04:00
John Colvin 671ef41a5b Merge branch 'master' into implementing-diy-grid 2018-04-21 17:13:24 -04:00
John Colvin 33b69b09a0 SPARK-979 on the ladder the order type currently selected is not saved across sessions 2018-04-21 16:03:45 -04:00
John Colvin 6e8c1df339 SPARK-935 Adding securities to market view removes sorting 2018-04-21 15:46:09 -04:00
John Colvin 65c873da9a SPARK-1004 Timebox order start time should be 5 minutes in the future, stop 10 minutes in the future 2018-04-21 13:15:43 -04:00
John Colvin 0480405291 SPARK-1006/SPARK-1011 TimeBox params dropdown needs relative time options 2018-04-21 12:26:32 -04:00
Eric Harding 03e317f1c5 Web UI: Enable clicking login button to move to rest of the app. Next step submit to server 2018-04-20 19:59:39 -04:00
Eric Harding 2e4dbd4431 Web UI: Add basic login page 2018-04-20 19:46:54 -04:00
Taha Afzal 9a32a5ec67 user model service API 2018-04-20 19:24:29 -04:00
Jake Norbut 3bbc42941b Merge branch 'master' of bitbucket.org:bluetradesys/spark into stop_orders 2018-04-20 15:34:10 -05:00
Eric Harding 0d9abc047b Web UI - Remove url parsing 2018-04-20 16:29:30 -04:00
Jake Norbut 53d8c12e3f stop order type will no longer present itself as having properties (no < in ladder now); price will also be set just by clicking in ladder 2018-04-20 15:27:00 -05:00
Eric Harding 98e9dd33b8 Javascript websocket connection and login 2018-04-20 16:08:42 -04:00
John Colvin 467858b101 SPARK-1006/SPARK-1010 OrderTicket - definition params dropdown is missing 2018-04-20 14:15:09 -04:00
Michael Harding f37cbbe0ee Add brand_primary and shell_gray to main.sass 2018-04-20 14:13:35 -04:00
Jake Norbut de2b4ae6fd stops: drawing badge at trigger price when filled qty == 0 2018-04-20 12:06:36 -05:00
John Colvin 5e490f7243 SaveWindowFactory 'Restore window' log uses window.diagnostic_name 2018-04-20 12:23:41 -04:00
John Colvin 633b636c57 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-04-20 12:20:23 -04:00
John Colvin 25c9ab908d Merged in window-manager-with-locks (pull request #12)
SPARK-1008 Closing window/shell while windows are opening crashes

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-04-20 16:19:03 +00:00
John Colvin 6e415700c0 SPARK-1008 - pr edit: 'opening window' log msg 2018-04-20 12:18:12 -04:00
John Colvin 58ab793534 SPARK-1008 pr edits 2018-04-20 11:42:15 -04:00
Taha Afzal 5985d1196e adding margin to accounts proto 2018-04-20 10:56:13 -04:00
Michael Harding e5cf7ae712 webpack looks in public dir 2018-04-20 10:23:21 -04:00
Eric Harding 96655304ff Fix module import paths for typescript and jest 2018-04-19 22:25:35 -04:00
Eric Harding 55194f0830 Enable logon though websocket gateway. Generate js protobufs for all services. 2018-04-19 17:02:51 -04:00
Eric Harding c285cbafa8 do not replicate node_modules to linux 2018-04-19 17:01:57 -04:00
Eric Harding ff20d27f41 Add authentication fields to api request header 2018-04-19 17:00:31 -04:00
John Colvin f46c271194 freeze brushes used by ActivityLog 2018-04-19 13:48:28 -04:00
John Colvin aac84e99e2 SPARK-1008 Closing window/shell while windows are opening crashes 2018-04-19 13:05:56 -04:00
John Colvin 2a9c8f5342 Ladder - change assert to log-warning 2018-04-18 16:40:24 -04:00
John Colvin d32e766561 Merged in ladder-with-glyphs (pull request #11)
Ladder - render GlyphRuns instead of FormattedPrices

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-04-18 20:27:25 +00:00
John Colvin 7f5f3b496a Ladder - render column text with clip 2018-04-18 16:13:13 -04:00
John Colvin 6e066e5031 Ladder - render GlyphRuns instead of FormattedPrices 2018-04-18 14:40:47 -04:00
John Colvin 773ac8ffa0 DIYGridAnimationAdorner was not animating top row 2018-04-17 16:51:30 -04:00
Eric Harding a13be3156b Add typescript api unit tests 2018-04-17 15:38:41 -04:00
John Colvin d2123bef10 create DIYGridAnimationAdorner (used by mview) 2018-04-17 13:49:23 -04:00
John Colvin 1a9d340db1 DIYGrid - mview updates properly 2018-04-17 13:49:09 -04:00
Eric Harding f99e6e9188 Add Imports.fs as a single place to declare import definitions 2018-04-17 12:04:01 -04:00
Eric Harding 2c9c0f8563 Add ts2fable to api project as a way to specify the version 2018-04-17 12:04:01 -04:00
Eric Harding 91939df1e6 Add sln file for web ui. Makes vscode happier. 2018-04-17 12:04:00 -04:00
Eric Harding aa2bb376b1 Sample for importing api module into web ui 2018-04-17 12:04:00 -04:00
Taha Afzal c251e589c5 SPARK-965 2018-04-16 22:11:13 -04:00
John Colvin 8ca84522ac DIYGrid - reorganize columns/rows/cells, HighPerformanceRow can handle FrameworkElementColumns 2018-04-16 20:31:00 -04:00
John Colvin 7a18a58f5d DIYGrid - add optimized text/price/size cell views 2018-04-16 20:01:55 -04:00
John Colvin 00d7c5777c DIYGrid - GlyphRun utils 2018-04-16 19:55:07 -04:00
John Colvin 31bc2a8b9b DIYGrid - cache/freeze brushes 2018-04-16 19:53:26 -04:00
John Colvin 756ffdcea8 DIYGrid - bind column filter properties 2018-04-16 19:38:03 -04:00
John Colvin e10b5e21a5 DIYGrid - fix drag selection 2018-04-16 19:36:56 -04:00
Jake Norbut 999d28c906 SPARK-949 - Sell button hover effect on order ticket now matches ladder 2018-04-16 15:11:00 -05:00
Kevin Darby 69e0968c35 orders sdk 2018-04-16 15:41:42 -04:00
Eric Harding 71c4214cb3 Add fable template src/web/ui 2018-04-16 13:40:22 -04:00
Kevin Darby 786689ecfc more sdk work 2018-04-16 13:20:03 -04:00
Kevin Darby 45e8e8a9b7 added streaming interfaces for accounts and users; Taha can now maybe use these services to serve his types 2018-04-16 13:20:03 -04:00
Eric Harding 2116149a30 Add web/api project to build api web core layer. 2018-04-16 11:28:22 -04:00
John Colvin 674ee6144e Merged in SPARK-1003-multiple-ladders (pull request #10)
SPARK-1003 Market view ladder button only opens 1 ladder despite multiple selected

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
Approved-by: John Colvin <john.colvin@bluetradesys.com>
2018-04-16 14:20:17 +00:00
Kevin Darby b5006ff520 add make_ to stateful publisher per Eric 2018-04-16 09:25:20 -04:00
Taha Afzal a6e7d77d1d SPARK-965 2018-04-15 16:44:26 -04:00
Pedro Pinto 46e80e277a SPARK-1007, and just like that sim supports market orders. 2018-04-13 18:06:29 -04:00
Pedro Pinto 194b947e1b Added code to facilitate autocert. 2018-04-13 18:06:05 -04:00
John Colvin e34e3194df Merged master into implementing-diy-grid 2018-04-13 16:17:54 -04:00
John Colvin 9aeab69581 add window_type property to IShellWindow 2018-04-13 15:36:58 -04:00
John Colvin d7186b7052 LadderWindowFactory accidentally lost an ObserveOnDispatcher() 2018-04-13 14:34:49 -04:00
John Colvin 3c51b091b9 SPARK-1003 Market view ladder button only opens 1 ladder despite multiple selected 2018-04-13 14:23:23 -04:00
Eric Harding 5e86462676 Advance the security keys by # replay securities to avoid screwy synthetics 2018-04-13 14:05:18 -04:00
Taha Afzal 36103452da Spark-965 2018-04-13 11:47:36 -04:00
John Colvin fa2f08ba75 remove unused/deprecated extensions from Update.cs 2018-04-13 11:40:10 -04:00
John Colvin 7251abdd60 SPARK-1002 market break {value} is unacceptable for market range assert 2018-04-12 19:18:44 -04:00
John Colvin 80d87c4139 fix typeo in lastordefault extension 2018-04-12 19:11:57 -04:00
John Colvin 7eace1a892 fix FillTuple observable in OrdersModel 2018-04-12 18:05:14 -04:00
Kevin Darby 44684e9377 little cleanup 2018-04-12 16:15:26 -04:00
Pedro Pinto fe7bf108f3 SPARK-994, We are more economical in how we represent the sim book. 2018-04-12 13:25:24 -04:00
Pedro Pinto 16bf0a7236 Changed how we reply to logon in Jetfix, trying to pacify Autocert. 2018-04-12 11:56:17 -04:00
Kevin Darby 48491d6b90 made some changes in SDK but it's still clumsy 2018-04-11 18:41:48 -04:00
Eric Harding 4d3a0375aa Add websocket session tracking 2018-04-11 18:11:50 -04:00
Eric Harding f50118fb45 SPARK-999 C++ http server which can serve config. No python 2018-04-11 14:57:27 -04:00
Kevin Darby 03773e52ca orders in SDK 2018-04-11 11:47:13 -04:00
John Colvin 001d1aa5b4 SparkWindowView - change menu-expander-button width to 5, grid.column to auto 2018-04-11 11:27:08 -04:00
Eric Harding 87df2c4d6d add websocketpp to externals 2018-04-10 17:37:44 -04:00
Eric Harding 59321c0e46 SPARK-975 - "found duplicate entry for platform_id"
CME AutoCert puts the same 0GLB future on 2 channels which confuses the
security db.  There isn't really a fix for this other than to remember
the channel the security was originally found on which is kind of a
pain. Since this has never happened in production I think it might be
AutoCert only behavior.  Just in case I'm putting in an emergency
workaround to just not load the database.  This should allow us to keep
a production customer running while we put in a real fix.
2018-04-10 13:02:38 -04:00
Eric Harding 5ee027020b Merged in ImmutableChange (pull request #9)
Fixes the problem where Immutable wrapper does not discern a null field on the underlying proto

Approved-by: John Colvin <john.colvin@bluetradesys.com>
Approved-by: Jake Norbut <jake.norbut@bluetradesys.com>
2018-04-10 13:33:54 +00:00
Eric Harding 4c81f3bb1e Fix from code review feedback. 2018-04-10 09:27:11 -04:00
John Colvin 83dd20dd55 Ladder Perf - allow row count to increase as-needed up to a hard-coded max 2018-04-09 18:47:31 -04:00
John Colvin f59a2f6f48 Ladder Perf - increase price_out_of_range_render_interval to 5 secs 2018-04-09 18:47:31 -04:00
John Colvin 8388768edc add/implement LaddersSpawnMany to toggles.proto, defaults to false 2018-04-09 18:47:30 -04:00
John Colvin 38e8c9a0c8 LaddersOnThreads, in toggles.proto, defaults to true 2018-04-09 18:47:30 -04:00
Eric Harding 03bf7212a0 Add some checks. Try to remove null checks for non-nullable fields 2018-04-09 16:11:57 -04:00
Eric Harding 84dca4a714 Make Message fields in Immutable protos nullable 1/2 2018-04-09 15:59:04 -04:00
Pedro Pinto c14ffe900a Drop tags 95, 96 if securelogon is on. Changed application to spark 2018-04-09 15:46:42 -04:00
Jake Norbut 4428e74d10 PnL - PnL is now a ISharedWindow 2018-04-09 14:28:45 -05:00
Jake Norbut 386b5f9b6b OrerBook - OrderBook is now an ISharedWindow (ISlowWindow) 2018-04-09 12:33:04 -05:00
Jake Norbut 2394f0abc4 PnL - Summary in status bar now ignores NaN pnl [this should never occur in practice with a waterfall pnl type] 2018-04-09 11:22:25 -05:00
Jake Norbut 4a4a30b0fd Orderbook - don't crash when filtering an OrderBook with orphans 2018-04-09 10:59:08 -05:00
John Colvin d530108854 DIYGrid - HyperlinkColumn and CellAdorner 2018-04-08 21:21:33 -04:00
John Colvin 5836855636 DIYGrid - mouse-drag selection 2018-04-08 18:16:43 -04:00
John Colvin 6ecbe8c951 Ladder Perf - cache/reuse size-FormattedTexts 2018-04-07 20:45:34 -04:00
John Colvin 50a6cc3223 Ladder Perf - in LadderRender, use const top_margin 2018-04-07 18:59:56 -04:00
John Colvin 3caee644ab Ladder Perf - only render grid lines once (nothin' like low hanging fruit) 2018-04-07 18:39:15 -04:00
John Colvin 021f79ff8c Merged master into implementing-diy-grid 2018-04-07 17:24:50 -04:00
John Colvin 419de81457 DIYGrid.ColumnBase - remove unused function 2018-04-07 17:23:21 -04:00
John Colvin fe8cb76d52 MarketView/TimeAndSales default column widths #DIYGrid 2018-04-07 17:14:26 -04:00
John Colvin f52516b49f DIYGrid - _frozen_column_count is 0 by default 2018-04-07 16:35:59 -04:00
John Colvin 70e66927a6 DIYGrid - fix cell clipping, simplify row/cell render 2018-04-07 16:33:01 -04:00
Kevin Darby 18a0ed75c4 sdk refactor, much cleaner now 2018-04-06 18:23:32 -04:00
Pedro Pinto c62490d410 Moved docker ptr 2018-04-06 19:34:40 +00:00
Pedro Pinto 3602fd479b Made secure logon work a bit more portable 2018-04-06 19:29:35 +00:00
Kevin Darby 335d590106 Merge branch 'master' of bitbucket.org:bluetradesys/spark
# Conflicts:
#	src/lib/sparkproto/SparkProtos.proto
#	src/server/sparkd/CMakeLists.txt
#	src/server/sparkd/order_man/order_man_utils.hgit
2018-04-06 15:29:27 -04:00
Kevin Darby a9d8a3929e fix build 2018-04-06 15:16:58 -04:00
Kevin Darby b814a23a57 spark_sdk coming along 2018-04-06 15:02:48 -04:00
Kevin Darby d6aeda8cfd sdk 2018-04-06 13:10:47 -04:00
Kevin Darby c95b402683 fixed help message 2018-04-06 13:10:47 -04:00
Kevin Darby ebecef31f4 spark_sdk md works 2018-04-06 13:10:47 -04:00
Kevin Darby cc815c0778 maybe eric changed this 2018-04-06 13:10:23 -04:00
Eric Harding 6a5cde8a33 advance docker pointer 2018-04-06 11:39:23 -04:00
Jake Norbut d58c1b5fca PnL - right align status bar, visual polishing 2018-04-05 16:33:35 -05:00
Eric Harding dd729f815d SPARK-985 Implement RFQ 2018-04-05 16:03:15 -04:00
Jake Norbut 49f3ad6304 SPARK-941 - added some totals in a new status bar; will ultimately put a swipe sum in here 2018-04-05 14:55:52 -05:00
Eric Harding 7c20402bd5 advance linux docker pointer 2018-04-05 15:16:53 -04:00
Eric Harding 09f96d4cce Backport mdp3main changes from edge 2018-04-05 15:16:53 -04:00
John Colvin 04d0e82ea8 DIYGrid - row selection 2018-04-05 14:48:08 -04:00
John Colvin d855a7025e DIYGrid - invalidate_column_layout in OnRenderSizeChanged 2018-04-05 13:40:33 -04:00
John Colvin bdb7dfb8c6 DIYGrid - handle null columns 2018-04-05 13:39:58 -04:00
Pedro Pinto a64001a333 SPARK-971, Fixed a bug in secure logon implementation. 2018-04-05 13:36:57 -04:00
Pedro Pinto 07a406142a SPARK-971, Secure logon for spark. 2018-04-05 12:34:34 -04:00
Pedro Pinto 7523e812ea Moved container pointer 2018-04-05 12:33:32 -04:00
Eric Harding a008bac794 SPARK-959 SecureLogon - only consider non-expired keys 2018-04-05 10:58:12 -04:00
John Colvin 904cea0389 DIYGrid - row selection color 2018-04-05 10:46:34 -04:00
Eric Harding 005073060a Marketdata.conf should not have 'Regular' (every packet) onixs logging enabled. 2018-04-05 09:13:50 -04:00
John Colvin eafd648a19 DIYGrid.HighPerformance - row_height assert msg typeo 2018-04-04 17:27:14 -04:00
John Colvin 964ad04e94 DIYGrid.RowBase - protect constructor 2018-04-04 17:24:41 -04:00
John Colvin c082f181c6 DIYGrid.RowBase - clear previous Height Binding on rowLoaded 2018-04-04 17:24:21 -04:00
John Colvin 747cc872ea DIYGrid.HighPerformanceRow - row_height is readonly 2018-04-04 17:23:37 -04:00
John Colvin ab00a4dc98 DIYGrid.HighPerformanceRow - initialize row_height 2018-04-04 16:15:58 -04:00
John Colvin 8045be92bf DIYGrid.RowBase - discourage changes disclaimer 2018-04-04 16:10:20 -04:00
John Colvin e6ff41428f DIYGrid.HighPerformanceRow - remove hardcoded row height 2018-04-04 16:09:10 -04:00
John Colvin f6bc4c953a DIYGrid - fix 'ColumnHeight' misnomer 2018-04-04 13:49:48 -04:00
Jake Norbut a449ff23a4 Ladder Badge - the Taming of the Badge; badge borders stay within ladder levels now 2018-04-04 12:20:20 -05:00
John Colvin 8e5db104a2 DIYGrid DataContext can be null 2018-04-04 13:17:45 -04:00
John Colvin dc4d3a9ea3 TimeAndSales - fix 'zero-width' rows on startup bug #DIYGrid 2018-04-04 13:17:45 -04:00
John Colvin a8ffb45529 DIYGrid - add column filters 2018-04-04 13:17:44 -04:00
Jake Norbut 2532c2b2a1 SPARK-925 - updating proto defaults for new Order column size; updating total window width to accomodate for larger order column 2018-04-04 11:20:11 -05:00
Jake Norbut 3897dbc6e5 PnL - no need to update pnl when it was recnetly updated w/i some threshold by a position update 2018-04-04 11:20:11 -05:00
Eric Harding d1daf73086 SPARK-959 Implement functions for CME secure logon. 2018-04-04 11:28:21 -04:00
Pedro Pinto 4a02df82a4 Moved externals pointer and referenced cryptopp 2018-04-04 15:13:05 +00:00
John Colvin 3b73cb6e99 TimeAndSales - set background to 'CommonBackground' 2018-04-04 11:09:02 -04:00
John Colvin c891c3dd30 DIYGrid - mview and time&sales use new HighPerformanceRow 2018-04-04 11:09:02 -04:00
Eric Harding f318dffdeb Revert "SPARK-959 Implement functions for CME "secure" logon."
This reverts commit ac2fa9b7bc.
2018-04-04 11:04:59 -04:00
John Colvin 9bc7edb246 Merged master into implementing-diy-grid 2018-04-04 11:02:42 -04:00
Eric Harding ac2fa9b7bc SPARK-959 Implement functions for CME "secure" logon. 2018-04-04 11:01:12 -04:00
Jake Norbut 9abf59170a PnL - specifying a default sort and minwidth so that window is resized appropriately on launch 2018-04-04 09:45:24 -05:00
Pedro Pinto fec3c68958 Claned up SparkProtos a little. 2018-04-04 10:17:58 -04:00
Pedro Pinto 90fd7bfd1b SPARK-503, Aligned simulator and jf sessions so we don't crash 2018-04-04 08:56:52 -04:00
Jake Norbut 9544b69047 SPARK-925 - at least in part; made order badge wider by 10 pixels 2018-04-03 14:20:41 -05:00
Pedro Pinto 9beb8e0035 SPARK-974, Partial handling of trade correction messages. 2018-04-03 11:42:04 -04:00
Jake Norbut 27558a3dca OrdersModel - Adding .Replay(1).RefCount() to the subscribei; cancel selected wasn't working from the OrderBook prior to this because the subscription appeared to be getting immediately disposed 2018-04-03 09:39:15 -05:00
Eric Harding 8852671151 Touch CMakeLists.txt before server build. 2018-04-03 10:30:37 -04:00
Jake Norbut 19b9eb69f1 SPARK-918 - No longer hiding high/open/etc for synthetics in ladder 2018-04-02 16:13:53 -05:00
Jake Norbut b5869e348c SPARK-689 - adding Settle price to ladder info area 2018-04-02 16:03:27 -05:00
Jake Norbut 2ed0a14c29 SPARK-519 - smarter MinWidth size for OrderBook 2018-04-02 13:27:21 -05:00
Eric Harding be751c0443 Remove .conf reference to 'UseFakeOrderLogic' 2018-04-02 13:54:10 -04:00
Pedro Pinto 557e539fad SPARK-678, 0 sized stream updates were being swallowed by the API. 2018-04-02 13:52:36 -04:00
Pedro Pinto 057e41342b SPARK-923, Qty and price no longer updated in completed orders. 2018-04-02 12:22:33 -04:00
Jake Norbut 96f35493a4 Windows positioning - removing temporary code 2018-04-02 09:11:02 -05:00
Jake Norbut 2f65e3d257 SPARK-686 - window positioning code now moves the window if it overlaps with the taskbar 2018-04-02 09:04:00 -05:00
Pedro Pinto dcffc8b2db SPARK-692, We no longer risk missing order state transitions on boot. 2018-04-02 10:01:58 -04:00
Eric Harding 04873b5847 SPARK-671 toggle for ladders on threads for easier debugging 2018-04-02 09:20:34 -04:00
Eric Harding 076e81c529 SPARK-671 Switch ladder to multi thread mode 2018-04-02 09:07:06 -04:00
Pedro Pinto 1dc4293eb5 Fixed build. 2018-04-02 08:55:11 -04:00
Pedro Pinto 01d1753620 Changed Support to support, for consistency with other subsystems. 2018-04-02 08:52:47 -04:00
Pedro Pinto 669da60852 Added logging for incoming order API calls. 2018-03-29 21:54:56 +00:00
Eric Harding 7e46267e43 fix build 2018-03-29 17:18:34 -04:00
Eric Harding fde007bf30 missing proto changes from previous checkin 2018-03-29 15:21:03 -04:00
Eric Harding 1fdaf6933d Backport some mdp3 changes from edge. 2018-03-29 15:17:12 -04:00
Eric Harding 522ba48c85 Merge branch 'prod' of bitbucket.org:bluetradesys/spark 2018-03-29 13:38:33 -04:00
Eric Harding 70fcc09b02 Readability improvement in WPFPanel 2018-03-29 13:38:05 -04:00
Eric Harding bfd72eb2b2 SPARK-671 make ActivityLogWindow run on its own thread. 2018-03-29 13:37:48 -04:00
Eric Harding 0e1352e99b Probably want to keep this at 300 2018-03-29 11:37:52 -04:00
Eric Harding feeb3348bf SPARK-977 larger ladder recenter control 2018-03-29 11:30:35 -04:00
Eric Harding 5dcee95c6b SPARK-933 The screenshot included by 'Report a Problem' is cropped 2018-03-28 19:24:13 -04:00
Eric Harding 4b3e67cae9 Cannot sample OrderActivity looking for changes. 2018-03-28 18:57:13 -04:00
Eric Harding 3751569ac5 Some code cleanup 2018-03-28 18:55:18 -04:00
Eric Harding a667ffd671 SimpleBus name change 2018-03-28 18:54:43 -04:00
Eric Harding 2495f0c9de Make tableupdate.update internal 2018-03-28 18:53:01 -04:00
Eric Harding 540e92d42a Rename SingletonBus to SimpleBus 2018-03-28 17:52:18 -04:00
Eric Harding 063df2cbea Posting to the bus should always be "safe" for the caller 2018-03-28 17:51:06 -04:00
Eric Harding 3c44f0746b Freeze brushes by default 2018-03-28 17:13:30 -04:00
John Colvin 081fd61793 freeze some orders brushes 2018-03-28 16:36:25 -04:00
John Colvin 05c0fc4430 modify ticket - init size with working qty 2018-03-28 16:23:23 -04:00
Eric Harding 8cbe874f22 Speed up ladder order handling from O(N^2) to O(N*d) 2018-03-28 14:47:41 -04:00
Eric Harding 841a8071d0 Format log message 2018-03-28 14:46:11 -04:00
John Colvin 7c8da47f6e DIYGrid style changes 2018-03-28 14:07:41 -04:00
John Colvin 890143c806 Merged master into implementing-diy-grid 2018-03-28 13:58:38 -04:00
Eric Harding 01293cfb8c Add 'all' flag to dumpsecurity 2018-03-28 13:49:58 -04:00
John Colvin a2dce0febb BTSColors - freeze brushes again 2018-03-28 13:43:56 -04:00
Eric Harding 172b13e931 Fix broken publish 2018-03-28 11:28:24 -04:00
Eric Harding 421386fb32 simplify this asnc code 2018-03-28 11:24:56 -04:00
Eric Harding e256bba2a2 spark-691 - when a ladder originated orders is rejected the bottom message does not mention it 2018-03-28 11:03:01 -04:00
Eric Harding 24fec0bcfe Clean up some unused extension methods in GlobalExtensions. 2018-03-28 10:53:54 -04:00
John Colvin 344d0f966a modify ticket - fix false 'change type' msg 2018-03-27 20:40:14 -04:00
John Colvin f337146a4d order ticket - 'size' commit on enter 2018-03-27 20:05:12 -04:00
John Colvin 4cfa7b0ccf PriceEntryControl input filter, commit on enter 2018-03-27 20:05:11 -04:00
John Colvin cf7561ccc7 aggregate OrderPropertiesEditor 2018-03-27 20:05:11 -04:00
John Colvin b0101bfbcb ViewModelBase Property automatic validation, observe_current 2018-03-27 20:05:11 -04:00
John Colvin 5ff62baf85 fix SpreaderOrderVM validation bug 2018-03-27 20:05:11 -04:00
Jake Norbut 18a42eb892 jetfix - switching to mc7 since ktk is not available for ilink 2.x cert 2018-03-27 14:54:04 -05:00
John Colvin 06bab721c0 SPARK-950 Ladder - order drag and drop sometimes doesn't work 2018-03-27 11:56:04 -04:00
Taha Afzal 4b66c70985 SPARK-309 (N legged tests) completed for a basic subset 2018-03-27 07:53:05 -04:00
John Colvin ffaddb47e9 Ladder - remove obsolete/erroneous resize code 2018-03-26 21:51:34 -04:00
John Colvin 72a30ad03f SPARK-926 move time and sales form to own thread 2018-03-26 20:33:39 -04:00
John Colvin 4971364b69 don't freeze brushes in btscolors 2018-03-26 20:33:39 -04:00
Jake Norbut c2cce08f5b adding KTK autocert session 2018-03-26 14:54:26 -05:00
John Colvin 264b76ae20 order modify ticket - flip ok/cancel positions 2018-03-26 11:59:09 -04:00
John Colvin dcef963710 order modify ticket - drop 's' in 'changes blah' 2018-03-26 11:54:59 -04:00
John Colvin c30f3afdfd SPARK-697 trade ticket when brought up to modify an order should not have a cancel order button 2018-03-26 11:51:55 -04:00
Jake Norbut 46f4163e5c Spread tests - clarifying steps 2018-03-26 09:45:26 -05:00
Taha Afzal e07982ad9a SPARK-309 (N legged tests) partially done 2018-03-26 07:37:02 -04:00
John Colvin 51b8603fbb fix cell total width calculation 2018-03-25 15:10:18 -04:00
John Colvin 2934ed642d start the conversation 2018-03-25 14:59:35 -04:00
John Colvin 20405ec715 SPARK-930 New synth should spawn a ladder 2018-03-24 15:54:31 -04:00
Taha Afzal 335faa121f all roundings go to one place now 2018-03-24 12:37:16 -04:00
Taha Afzal 5978ebe865 ratio spreads are better but all the rounding, flooring, ceiling for fractional qty's and fractional price_mults need to be formalized 2018-03-24 12:37:15 -04:00
John Colvin 6fed369b57 SPARK-936 Phantom grid over Market View 2018-03-23 18:48:46 -04:00
John Colvin 387116b320 remove unnecessary 'new' dictionary in time and sales model 2018-03-23 18:48:46 -04:00
Jake Norbut 17b0f71bac refining some tests 2018-03-23 17:07:55 -05:00
Eric Harding 269c354154 Spark-942 Ladder gotta move. 2018-03-23 17:42:51 -04:00
Eric Harding bd43f5633e Misread modal as topmost. Why does the BTSMessagebox use topmost by default? 2018-03-23 17:42:51 -04:00
John Colvin 3244ffcf97 fix fills security filter 2018-03-23 17:24:34 -04:00
Pedro Pinto 1d60ae7749 Sim persists orders now. 2018-03-23 16:35:53 -04:00
Pedro Pinto 9392ba47e6 Towards a persistent book. 2018-03-23 16:35:53 -04:00
Eric Harding bf01d8254e spark-688 fix electronic volume 2018-03-23 16:09:21 -04:00
John Colvin 92ffe729a6 SPARK-937 Remove synthetic command from MView 2018-03-23 13:54:57 -04:00
John Colvin 7439c2474e SPARK-939 Modify ticket should only allow price and qty to be modified 2018-03-23 13:49:34 -04:00
Michael Harding 1e3e1d5da0 SPARK-698: Workspaces like mice 2018-03-23 13:41:24 -04:00
John Colvin 08f63724b4 SPARK-944 OrdersModel.on_fill_tuples fires for all orders, not just new fills 2018-03-23 13:36:12 -04:00
Michael Harding 2437c27402 SPARK-677: More Ladder Header refinements 2018-03-23 13:23:01 -04:00
Eric Harding e0e9b451ca spark-947 - Fix crash in read_trades at startup. 2018-03-23 13:14:37 -04:00
Eric Harding 29ce8b804b Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-03-23 13:09:08 -04:00
John Colvin 0e15784a43 SPARK-932 When adding a new synthetic... 2018-03-23 12:40:16 -04:00
Eric Harding c8d1952e60 spark-946 2018-03-23 11:38:24 -04:00
John Colvin cefd8501c8 minor refactoring 2018-03-23 11:19:12 -04:00
Jake Norbut e00975bf4a PnL - typo spotted by Eric in binding 2018-03-23 09:58:00 -05:00
Eric Harding f50098ee91 fix error in setup_builds.bat 2018-03-23 10:40:52 -04:00
Eric Harding 877e915969 spark-938. Support request confirmation should not be topmost. 2018-03-23 10:20:27 -04:00
Jake Norbut 7e1fc8fe46 PnL - fleshing out a more comprehensive PnL test 2018-03-23 08:43:03 -05:00
Pedro Pinto cd5801a9b2 Added cert reservation for Michael. 2018-03-23 00:20:32 +00:00
John Colvin 873045826b SPARK-929 Need better defaults on synth creation 2018-03-22 20:13:16 -04:00
Jake Norbut d5a3e5c5f1 PnL - have to hide NaN now that the Tickconverter is no lnoger used 2018-03-22 18:20:59 -05:00
John Colvin bbdccf62b1 SPARK-909 Time and sales does not sort by anything 2018-03-22 18:29:53 -04:00
Jake Norbut ecd036e6e7 PnL - AvgBuy/Sell need to show non-tickable prices, so Tickconverter is out 2018-03-22 17:12:46 -05:00
Michael Harding 2fb0e9c478 SPARK-943: Add Clone Synthetic Icon 2018-03-22 17:16:30 -04:00
Michael Harding 74aca81322 Update Ladder test 2018-03-22 16:47:39 -04:00
Jake Norbut 1646516b68 OrderBook - right aligning some columns 2018-03-22 14:39:49 -05:00
Jake Norbut be9d94dd6f SPARK-916 - qty and filled qty are now color-coded according to buy/sell side 2018-03-22 14:15:14 -05:00
Kevin Darby 087aa8e889 reserving cme_mc5 2018-03-22 14:00:29 -04:00
John Colvin cce8c5912f SPARK-906 Ladder input qty box should only display numeric chars 2018-03-22 13:33:03 -04:00
Michael Harding c8e48310c7 Test Updates 2018-03-22 13:19:35 -04:00
Michael Harding f9df53533c Remove OK Cancel from workspaces dialog 2018-03-22 13:19:35 -04:00
John Colvin 267d0e08a2 synth create dialog - fix textbox scroll grid line bug 2018-03-22 12:35:33 -04:00
Pedro Pinto 1d38fbe356 Fixed price in sim T&S. 2018-03-22 10:35:40 -04:00
Pedro Pinto f255c2f713 Default MD platfor to be sim. It's that good. 2018-03-22 09:31:49 -04:00
Pedro Pinto e500bb57dd Time & sales information with sim. 2018-03-22 09:30:32 -04:00
John Colvin 0c3dde7663 SPARK-915 Activity Log - fills are past tense (bought, sold), orders are present (buy, sell) 2018-03-21 18:14:31 -04:00
Jake Norbut c0e25d6422 PnL - right aligning other numeric columns 2018-03-21 15:35:09 -05:00
John Colvin c4ffe98eff fix ladder 2018-03-21 16:27:12 -04:00
Jake Norbut 186a546708 SPARK-919 - Grid expander is now indented with symbol 2018-03-21 15:15:23 -05:00
Eric Harding 834b94f3f3 Rename OrderVM.cs to LadderOrderVM.cs to match class name. 2018-03-21 15:33:44 -04:00
John Colvin 1be0aee9b8 SPARK-902 Ladder should not allow NaN price orders sends 2018-03-21 15:32:26 -04:00
John Colvin f40fbb476e SPARK-913 Clicking on > button a spreader ladder crashes 2018-03-21 15:22:23 -04:00
Jake Norbut 6327972ecf SPARK-917- pnl values are now calculated when the position update and not just on the timer 2018-03-21 14:15:37 -05:00
John Colvin 85f79ac3ca simplify dicretevalues filter 2018-03-21 15:03:51 -04:00
Eric Harding 57389b35d6 clarify something in simple sanity test. 2018-03-21 14:53:20 -04:00
Pedro Pinto 6ab053ab10 Towards a better simulator. 2018-03-21 14:31:26 -04:00
Jake Norbut 4a7e009422 PnL - Changing SOD pos to buys - sells too 2018-03-21 13:18:46 -05:00
Jake Norbut 8e156deb35 PnL - change buys and sell to be since start of day, minor refactoring for when we lookup the start of day according to symbol schedule 2018-03-21 13:14:23 -05:00
Jake Norbut ceb683838b PnL - Changing to Net Pos to buys - sells rather than buys + sells 2018-03-21 12:50:07 -05:00
Jake Norbut 603f90dadb SPARK-910 - pnl sort last few tickconverter columns 2018-03-21 11:59:51 -05:00
Michael Harding 1cba4483eb Test updates: common_setup1 and simple_sanity 2018-03-21 12:26:44 -04:00
Eric Harding 59ef7d6ff5 report_a_problem.txt edited online with Bitbucket 2018-03-21 16:04:33 +00:00
Eric Harding df996c00b3 report_a_problem.txt edited online with Bitbucket 2018-03-21 16:02:26 +00:00
Taha Afzal 3e8f21e843 fixing the broken tests caused by the price_mult changing places 2018-03-21 11:31:44 -04:00
Eric Harding b890eef52d Include contact info in error report. 2018-03-21 10:36:12 -04:00
Michael Harding f3b49ae1db SPARK-677: buttons move up 2018-03-21 10:15:08 -04:00
Michael Harding 939e2b4444 SPARK-901: Link to website in About 2018-03-21 10:15:08 -04:00
Eric Harding d864a773c3 Needed to touch CMakeLists.txt... I guess? 2018-03-21 10:02:45 -04:00
Eric Harding f246f21277 Back end for ErrorReportService 2018-03-21 09:18:30 -04:00
Taha Afzal 0bf9fe6b9f Ratio spreads fixed 2018-03-20 22:41:50 -04:00
Jake Norbut 92a538ac17 OrderBook - no longer crashes when a child's parent is never received 2018-03-20 17:35:09 -05:00
Pedro Pinto 0ac6c0c62c Improved test case generation scripts 2018-03-20 17:34:38 -04:00
Pedro Pinto cb3dd642d2 Towards test issue generation 2018-03-20 17:07:36 -04:00
Eric Harding 1afe75b6cf runspark.cmd should pass along command line arguments. 2018-03-20 17:07:10 -04:00
Eric Harding c1b4392ac1 Synthetic leg side is implied in the price_multiplier so no additional sign flip needed. 2018-03-20 17:06:55 -04:00
John Colvin c95533a7ea SPARK-694 In synthetic creation dialog, remove Inside Market Throttle Threshold 2018-03-20 16:32:14 -04:00
John Colvin b76db3b06e SPARK-700 disallow changes to synth if working orders exist 2018-03-20 16:22:56 -04:00
Eric Harding e3190bade5 price_multiplier - there can be only one. 2018-03-20 16:02:00 -04:00
Jake Norbut 5f5257f000 pnl - overriding ToString() for easier debugging 2018-03-20 14:10:00 -05:00
Jake Norbut c50fdd9f6e pnl - right aligning pnl columns 2018-03-20 14:10:00 -05:00
John Colvin bb93cf4944 SPARK-687 Create Synthetic dialog does not update Name field if 'Enter' is pressed... 2018-03-20 14:57:53 -04:00
Pedro Pinto 4caaa36d26 SPARK-696, Modifying order size was not properly updating book 2018-03-20 14:34:45 -04:00
John Colvin da3956764c SPARK-701 Allow cancel of child orders in ladder 2018-03-20 14:32:46 -04:00
John Colvin 3f9ce2fa11 SPARK-685 TimeAndSalesModel - trade cursor cannot be shared between different channels 2018-03-20 14:22:41 -04:00
Jake Norbut 91bde6eab5 SPARK-690: sort no longer crashes (with the new filtering); general refactoring 2018-03-20 11:49:12 -05:00
Pedro Pinto c0025b08c5 SPARK-693, simulator fills are tagged with correct price 2018-03-20 12:25:30 -04:00
John Colvin 6f8f57ca4a add timebox to spreader order type dropdown 2018-03-20 12:18:18 -04:00
Pedro Pinto ba15f8c74c Fixed a few bugs in TimeBoxOrder 2018-03-20 10:19:06 -04:00
John Colvin 42a02274d9 timebox order view 2018-03-20 02:53:54 -04:00
John Colvin fb58703e64 timebox order default child to limit 2018-03-20 02:26:20 -04:00
John Colvin 5b152ace97 SPARK-682 Add UI support for TimeBox order 2018-03-20 02:21:31 -04:00
John Colvin e9a258bb8c organize some discretevalues filter methods 2018-03-20 02:21:31 -04:00
Michael Harding 31d43ae8e6 SPARK-673: header resize 2018-03-19 18:30:35 -04:00
Eric Harding 9dd2b83b8c spark-668 Shell crash on server bounce 2018-03-19 17:36:05 -04:00
Jake Norbut 0fad22d5fc SPARK-606 - new filtering 2018-03-19 16:08:14 -05:00
Eric Harding a32fc2ed17 Spark-681 Synthetic creat works ok if heartbeats are ticking. 2018-03-19 16:58:16 -04:00
Eric Harding d5f90772fe SyntheticSecurityService log on synthetic create 2018-03-19 16:57:42 -04:00
Eric Harding 247365d762 Spark-681 Synthetics can be lost on startup due to race. 2018-03-19 16:06:51 -04:00
Eric Harding 6079d7f02d Remove some dead code. 2018-03-19 14:38:25 -04:00
Taha Afzal c3cb14a351 SPARK-656, spreader tests: 2018-03-19 11:54:56 -04:00
Jake Norbut 381e277eb9 SPARK-684: OrderBook now calls .Sample(333) 2018-03-19 09:58:50 -05:00
Taha Afzal 6e6b9faa38 Fixed a bug where if the throttle params were unset, modifications would be sent for no reason 2018-03-19 10:03:38 -04:00
Taha Afzal 6ff4f0a992 price comparison function being used in pre-hedge qty discovery 2018-03-19 10:03:38 -04:00
Pedro Pinto fcf4c9f187 TimeBox order code complete on server. 2018-03-19 09:28:19 -04:00
John Colvin 81941cba4e domain filter undoes selection changes on close (if not applied first) 2018-03-18 19:48:16 -04:00
Pedro Pinto 69e337bcd2 TimeBox order work. 2018-03-18 18:59:31 -04:00
Pedro Pinto 418f626023 More sensible logging for simulator. 2018-03-18 18:31:12 -04:00
Pedro Pinto 3da33aba84 Improved exchage simulator. 2018-03-18 18:01:51 -04:00
John Colvin 2f6c665c5c SPARK-655 When you click out of a grid filter make sure to clean the filter dialog 2018-03-18 17:02:11 -04:00
John Colvin 54252f8e0c filters - fix selected text input filter 2018-03-18 15:59:09 -04:00
John Colvin e270d6ae15 filters - remove focus noise 2018-03-18 15:19:34 -04:00
John Colvin 79a543cab3 fix typeo 2018-03-18 15:11:42 -04:00
John Colvin bdf8e2c2ff filters - TickUpDowns ctrl + arrow key traverse 2018-03-18 15:08:20 -04:00
John Colvin ec2e293095 remove superfluous dependency property in TickUpDown 2018-03-18 15:02:01 -04:00
John Colvin 0169ffd39e SPARK-651 add a button in synth management window to bring up an order book filtered for only synths 2018-03-18 14:46:49 -04:00
John Colvin 3b51c8e6ad SPARK-650 make WorkingOrders column in Synth management link to an orders view filtered by the security in question 2018-03-18 14:46:49 -04:00
John Colvin 2a26b587a7 SPARK-654 Domain filter in grid should not be real time 2018-03-18 14:46:48 -04:00
John Colvin cbbf1221e6 filters - fix focus bug 2018-03-18 14:46:01 -04:00
John Colvin 45d9434965 filters - escape/enter commands are executed even if filter does not have focus 2018-03-18 13:05:24 -04:00
John Colvin 498d992661 SPARK-653/SPARK-680 Make the Clear button exit the filter 2018-03-18 13:05:24 -04:00
John Colvin 1a88d99aed SPARK-653/SPARK-679 Rename 'Commit' to 'Apply' 2018-03-18 13:05:24 -04:00
Pedro Pinto c5a69bc637 Towards TimeBoxOrder. 2018-03-17 20:52:14 -04:00
Pedro Pinto 664f0fa519 Exchange sim discovers rather than load securities. 2018-03-17 20:52:14 -04:00
Pedro Pinto 86e42c0d0b Made sim a bit more realistic. 2018-03-17 19:04:51 -04:00
Eric Harding 8cadbeda17 spark-670 Shell hangs if config is wrong. 2018-03-16 17:38:47 -04:00
John Colvin 3d644f9a36 SPARK-657 Default Qty Price Mults 2018-03-16 16:01:36 -04:00
John Colvin 0988eae87c DataGridEx - ignore (Preview)KeyDown events if popups are open 2018-03-16 16:01:36 -04:00
Michael Harding 1e78ef1aba SPARK-672: more (superficially) consistent ladder cancel buttons 2018-03-16 15:40:39 -04:00
Jake Norbut 89c07ebc0e OrderBook - source formatting fix 2018-03-16 14:34:13 -05:00
Eric Harding 75a9c73d0f Spark-660 - Round synthetic book to tick size 2018-03-16 15:23:58 -04:00
Jake Norbut 222aa771c2 SPARK-647 - addiing custom filtering type for Sub Type; one last sorting nit 2018-03-16 14:12:42 -05:00
Eric Harding 55c7526e90 Fix crash on exit when TABLE_DESTROYED fires and CLR is shut down 2018-03-16 13:22:31 -04:00
John Colvin aa9fb87556 SPARK-658 Pre-Hedge -> Max Inside Ticks 2018-03-16 11:45:19 -04:00
John Colvin aad88dfb01 synth editor - raise correct property changed 2018-03-16 11:41:46 -04:00
John Colvin 036a008e2b synth creation - description grammar/capitalization 2018-03-16 11:35:30 -04:00
Pedro Pinto afe35b3875 Removed assert(false) from md merge code. 2018-03-16 10:34:32 -04:00
Pedro Pinto 66dd47f4ae Removed obsolete files. 2018-03-16 09:38:09 -04:00
Pedro Pinto faf4da04ad Merging our book with outside MD. 2018-03-16 09:19:43 -04:00
John Colvin 5a41cafc5d syn create - increase description font size 2018-03-16 03:15:23 -04:00
John Colvin 56e49ab0e1 SPARK-557 In the Synthetic creatio form fill in pop up hints with proper documentation 2018-03-16 02:02:22 -04:00
Taha Afzal d7c028048d Modified the post hedge ticks away to use ticks instead of $ 2018-03-15 17:30:14 -04:00
Jake Norbut fdcd7d1b84 OrderBook - basic filtering works again; still need to implement revised filtering 2018-03-15 16:27:58 -05:00
Jake Norbut bea629ed42 OrderBook - new way of setting inital sort glyph b/c accessing Items creates a CollectionView that can drive people crazy 2018-03-15 15:34:23 -05:00
Eric Harding 17c9fa0520 Add constructor to MDConsumer which lets you specify what platform you want. (for simulator) 2018-03-15 15:05:03 -04:00
John Colvin c4112aea66 ObservableFilterCollection inserts in correct relative index on PropertyChanges 2018-03-15 14:53:31 -04:00
John Colvin 51f2710f57 SPARK-652 Change format of Working column in Market View from price @ qty to qty @ price 2018-03-15 14:06:16 -04:00
Pedro Pinto 5c19957288 Exchange simulator now supports order changes / cancels. 2018-03-15 13:59:23 -04:00
Pedro Pinto c07bf453e9 Removed obsolete file. 2018-03-15 13:59:23 -04:00
John Colvin 8390f87352 rename 'ObservableFilter.cs' 'ObservableFilterCollection.cs' 2018-03-15 13:35:24 -04:00
John Colvin 5096784a7d grid filters - fix hook_filters method for ObservableFilterCollection 2018-03-15 13:34:14 -04:00
John Colvin 696713eccf ObservableFilterCollection filters on property changes 2018-03-15 13:33:39 -04:00
John Colvin 1a5e3531f5 overload hook_filters for ObservableFilterCollection 2018-03-15 12:08:42 -04:00
John Colvin 7abe18f595 synth create - add security key filter 2018-03-15 12:08:42 -04:00
John Colvin 50a0b56a86 synth create - don't allow creation with < 2 legs 2018-03-15 12:08:42 -04:00
Jake Norbut df85c4651b OrderBook - sort critera is correctly saved and restored, and reflects in the grid column upon restore 2018-03-15 10:45:35 -05:00
John Colvin 7c55bd9060 SPARK-666 synthetic modification window does not close after hitting OK 2018-03-15 11:34:44 -04:00
Jake Norbut 2c6b10d398 OrderBook: user-selected grid sort is now applied on model updates 2018-03-15 09:17:53 -05:00
John Colvin 84216ffa7d SPARK-667 Spreader params changes are not reflected in new orders 2018-03-14 23:52:57 -04:00
John Colvin d82f564794 SPARK-615 Spreader params should be disable-able 2018-03-14 18:45:55 -04:00
John Colvin 8dee3b7686 remove unused file 2018-03-14 18:45:55 -04:00
Jake Norbut 89cea9bb03 OrderBook - fixing crash on exit when saving settings; need to come up with something new to persist saved sort criteria, maybe 2018-03-14 16:41:01 -05:00
Eric Harding fe91360921 Fix missing binding in launcher.xaml 2018-03-14 16:58:55 -04:00
Michael Harding 5c36bcea8e Status in the second row 2018-03-14 16:52:54 -04:00
Michael Harding 7f6fa9ada0 SPARK-525: Headers in the ladder 2018-03-14 16:48:26 -04:00
Jake Norbut 37a4bed317 OrderBook - attached properties, more sorting, no more clear() on sort 2018-03-14 15:14:38 -05:00
Taha Afzal f715d196b0 adding test for throttle exposed a rounding bug 2018-03-14 14:08:12 -04:00
Eric Harding 13f6268082 spark-568 don't display child order updates 2018-03-14 13:57:38 -04:00
Eric Harding 21526c5f83 Quiet mouse up/down debug log messages. 2018-03-14 13:57:14 -04:00
Eric Harding c1d62d6c60 Send ActivityLog messages to the spark log 2018-03-14 13:55:56 -04:00
Eric Harding ae46e7475c Spark-555 2/2 Change the ladder specific even log into a global activity log 2018-03-14 13:40:33 -04:00
Jake Norbut 9199aeb1c3 OrderBook - sorting now works for MultiBinding column types 2018-03-14 08:53:48 -05:00
Jake Norbut 3f2f140646 OrderBook - more columns can sort now, but not all 2018-03-14 08:07:36 -05:00
Pete fdbff50cf4 fix docker pointer 2018-03-14 08:46:23 -04:00
Pete 92335be733 testing for ERRORLEVEL 2018-03-13 22:45:42 -04:00
Jake Norbut b4e134599c OrderBook - defer_refresh causing strange behavior when sorting, taking it out 2018-03-13 20:15:54 -05:00
Jake Norbut 4f5f072bb5 OrderBook - SortedTree based sorting 2018-03-13 20:07:27 -05:00
Eric Harding d3099a42fe Fix build 2018-03-13 20:38:36 -04:00
Taha Afzal 75627d0fb3 quoting qty (from walking the hedging depth) be floor'ed and not rounded 2018-03-13 19:46:17 -04:00
Eric Harding 7e00d8cce3 Spark-555 part 1/2 - remove event log from ladder bottom 2018-03-13 16:58:17 -04:00
Eric Harding 02cc555cc0 Make SortedTree immutable for now. 2018-03-13 16:16:11 -04:00
John Colvin d2a2de0a4d grid filters - fix commit-focus bug 2018-03-13 16:06:00 -04:00
John Colvin e086982ad9 grid filters - fix regexvm false 'active' bug 2018-03-13 16:05:59 -04:00
Eric Harding 38a7a8040b Add SortedTree for Orders window 2018-03-13 15:38:05 -04:00
John Colvin 30a4fb90bc grid filters - fix regexfiltervm null ref 2018-03-13 14:14:41 -04:00
John Colvin 33e170c392 grid filters - make 'commit' button focusable 2018-03-13 14:11:10 -04:00
Jake Norbut 0555c5e05e SPARK-649: PnL missing filters added 2018-03-13 12:28:30 -05:00
John Colvin 60b3a36577 ladder - check if market break index is out of range 2018-03-13 13:03:41 -04:00
Eric Harding 69d6264d0a TickDisplayConverter should handle binding.unsetvalue (and other unexpected inputs). 2018-03-13 12:26:34 -04:00
Taha Afzal ccbc5f24b9 comments 2018-03-13 11:48:56 -04:00
Jake Norbut fed03435b2 OrderBook - toggle visibility now works recursively 2018-03-13 10:47:06 -05:00
Jake Norbut 3650d37f50 Missed a line when rebasing with a merge conflict 2018-03-13 09:20:57 -05:00
Jake Norbut 8a3e1b9862 Orders - work in progress parent-child 2018-03-13 09:19:37 -05:00
Jake Norbut d12423b458 Nodes and Trees 2018-03-13 09:17:48 -05:00
John Colvin 42e15b3434 refactor grid filters 2018-03-12 22:33:03 -04:00
John Colvin 136acec4ba SPARK-548 In time filter make sure to validate date 2018-03-12 21:05:16 -04:00
John Colvin 3bef2e64ec create general purpose NotifyDataErrorAdorner (used by ExecutionStrategyEditor) 2018-03-12 21:05:15 -04:00
John Colvin cb03605690 DateTimePicker filters user input 2018-03-12 21:05:14 -04:00
John Colvin 67b124bc96 PriceEntryControl filters user input 2018-03-12 21:05:14 -04:00
Pedro Pinto 8bea201396 Towards a simulated book. 2018-03-12 18:51:52 -04:00
Taha Afzal adfe774efb more parameter comments 2018-03-12 10:28:10 -04:00
John Colvin ace38507db filters - commit click/enter closes filter popup 2018-03-11 19:22:47 -04:00
John Colvin 793f2b7f3c removed cancel button from filters (left cancel_commands in vm, in case we add it back) 2018-03-11 19:08:49 -04:00
John Colvin 312d745755 remove Security.Empty, use SecurityDataHelper.Defaults.SecurityImmutable instead 2018-03-11 17:55:59 -04:00
John Colvin 9bc6b02fab remove unnecessary line from TickUtils.mid_tick fn 2018-03-11 17:17:51 -04:00
John Colvin 17979c04bc synth create - added more hardcoded default ticks, user must select a tick from the defaults (cannot enter custom text anymore) 2018-03-11 17:15:43 -04:00
John Colvin 693ef4a12a ladder - remove unused function 2018-03-11 13:32:10 -04:00
John Colvin 571998ab24 ladder - fix rare mid-price index out of range bug 2018-03-11 13:29:05 -04:00
John Colvin b04bea7093 Ladder - avoid unnecessary iterations through price list when rendering sizes 2018-03-10 18:11:47 -05:00
John Colvin d08e102410 synth create - only allow user to choose an existing tick until we have
tick settings
2018-03-10 17:50:33 -05:00
John Colvin 3ebec942df Ladder - use same tick_equals method for normal/mouse-over size (no more ghost prices) 2018-03-10 16:07:20 -05:00
John Colvin 77e804a9dc SPARK-643 Synthetic management window 2018-03-10 15:40:06 -05:00
John Colvin 93da66765a SPARK-547 in grid filters do not filter in real time (for performance reasons) 2018-03-10 15:17:57 -05:00
John Colvin be19e5153a ViewModelBase - make ObjSnapshot revertable 2018-03-10 13:57:46 -05:00
John Colvin 970d4756e3 DataGridEx - block arrow key traverse if filter popup is open 2018-03-10 12:22:18 -05:00
John Colvin 6e93eb6938 TimeFilter/DateTimePicker - arrow key traversal/navigation 2018-03-10 12:10:24 -05:00
John Colvin d6bd67b601 TimeFilter/DateTimePicker - remove focus noise 2018-03-10 12:10:23 -05:00
John Colvin 4be3471f42 TickUpDown - Alt-Parameters 2018-03-10 12:02:56 -05:00
John Colvin 1c34fa2a1f SPARK-645 Order Ticket TIF=undefined when started from Market View 2018-03-09 17:40:53 -05:00
Jake Norbut 3df7716a84 SortedList - This will be a component of our Tree; fixed initial size bug; wrote a test 2018-03-09 16:40:04 -06:00
Eric Harding cdc68663bf Fix for tab though order ticket price/size 2018-03-09 17:32:33 -05:00
Eric Harding e652435890 Spark-608 - get the simulator to send markets down to the shell. 2018-03-09 17:16:20 -05:00
John Colvin 1653671764 normalizing font sizes 2018-03-09 17:15:06 -05:00
John Colvin 1ae2efca79 setting DataGrid default TextElement.FontSize to 11 2018-03-09 16:55:00 -05:00
John Colvin 5d6b2e185b synth create - auto name if user hasn't entered text 2018-03-09 16:50:55 -05:00
Eric Harding f34800ffed Spark-644 one side of synthetic market showing size=1 when source leg has no market 2018-03-09 16:04:59 -05:00
Eric Harding a1b39aaa2d Fix SortedList 2018-03-09 15:53:53 -05:00
Eric Harding 0754fc7947 Add SortedList class. 2018-03-09 15:52:36 -05:00
Michael Harding d48584fffe SPARK-626: less button-like buttons for canceling orders in the ladder 2018-03-09 14:46:20 -05:00
John Colvin eafc5c80cc remove font size overrides from mview, timeandsales, and fills 2018-03-09 14:30:25 -05:00
John Colvin a5d09b5b7d SPARK-642 Synthetic creation improvements - 2 2018-03-09 14:12:34 -05:00
John Colvin aac0d7799a synth editor - grey out readonly cells, add tool tip 2018-03-09 14:12:33 -05:00
John Colvin 9d981a1041 add input_disabled_text to BTSColors.UI 2018-03-09 14:12:33 -05:00
Jake Norbut c22a711fc7 orderBook - adding sub type; we may change this later 2018-03-09 12:05:46 -06:00
Jake Norbut 8b23690b3d sort wrapper - adding a null check 2018-03-09 12:05:46 -06:00
Jake Norbut 3bf8ce700a OrderBook - fixing last message ToolTip style 2018-03-09 12:05:46 -06:00
Taha Afzal bec1282f43 fixing build 2018-03-09 13:05:18 -05:00
Taha Afzal a918d1e40d comments on spreader params 2018-03-09 11:30:43 -05:00
John Colvin b7ae23fb07 DataGridEx - escape cancels edit without re-focusing cell's textbox 2018-03-09 11:24:42 -05:00
Jake Norbut 73b8bf3458 OrderBook - orders are indented more according to their depth 2018-03-09 10:19:51 -06:00
John Colvin 3e074b3ff7 SPARK-595 Synthetic modification rules 2018-03-09 10:56:15 -05:00
John Colvin 77168c86b3 SPARK-620 do not show synthetics when choosing leg for a synthetic 2018-03-08 20:35:11 -05:00
Jake Norbut 987db8ea6a ContractPicker - getting rid of old crusty comments 2018-03-08 15:56:54 -06:00
Jake Norbut bfe73d7a6a SecurityPicker - exchange list is now sourced from the bus Securities and not UserSymbols 2018-03-08 15:49:41 -06:00
Jake Norbut 6c0fe62c91 SPARK-604: cpp for spreads takes the first leg else nan and log 2018-03-08 14:07:15 -06:00
Pedro Pinto b339e456e4 SPARK-624, Multiple subscriptions for the same topic now work.
This was a scary one.
2018-03-08 14:24:23 -05:00
Pedro Pinto 69140002ed Adding new quick test helper 2018-03-08 14:24:23 -05:00
Pedro Pinto 6272be98a5 Adding new quick test helper 2018-03-08 14:24:23 -05:00
Eric Harding 2388711d4a min(), max() What's the difference really? 2018-03-08 14:04:57 -05:00
Jake Norbut e59587a0ea SPARK-620 - Contract Picker's world view can now be filterd via a SecurityCriteria 2018-03-08 12:40:05 -06:00
John Colvin 6cfc519d2d fix typeo in previous commit 2018-03-08 13:33:53 -05:00
John Colvin 7a1e8f9570 Remove "Enable Hedging" 2018-03-08 13:29:16 -05:00
John Colvin 53c669d14e SPARK-589/SPARK-633 "Size" should be called "Quantity" 2018-03-08 13:18:50 -05:00
John Colvin 72230209dc SPARK-589/SPARK-632 "Pay up" should be "Pay Up" 2018-03-08 13:15:32 -05:00
John Colvin 16b941344a SPARK-598/SPARK-631 "Market Order Hedge" should be "Send Market Order" 2018-03-08 13:11:08 -05:00
John Colvin d40b6c0092 SPARK-589/SPARK-630 PreHedge should be Pre-Hedge (similarly for Post) 2018-03-08 13:07:08 -05:00
John Colvin 9dbc482f31 SPARK-589/SPARK-629 disable pricing (restrict to standard) 2018-03-08 13:01:41 -05:00
John Colvin d97a126d64 SPARK-589/SPARK-628 leg does not need to be collapsible 2018-03-08 12:53:09 -05:00
Eric Harding f441c1f649 setup_builds.bat should also restore nuget packages. 2018-03-08 12:17:45 -05:00
John Colvin d3b00b1a6f synth create - fix msg text alignment 2018-03-08 12:04:26 -05:00
Jake Norbut 85b282479d SPARK-625 - orders whose securities come in after the order book is launched now fill in correctly rather that remain with Unknown Security 2018-03-08 10:39:17 -06:00
Taha Afzal e4d25506f6 adding comments 2018-03-08 07:34:48 -05:00
Taha Afzal 501e6db786 SPARK-616 suborder type 2018-03-08 07:34:48 -05:00
Taha Afzal becbee5af7 made some logging more clear, plus added an unused function to know if a leg has been completely filled 2018-03-08 07:34:48 -05:00
John Colvin 9e60aed4c4 synth create - shift msg text right 2018-03-08 02:07:20 -05:00
John Colvin e40354bf4f synth create - change message font color to green 2018-03-08 01:19:28 -05:00
John Colvin 9089936b83 SPARK-569 in order ticket do not display updates and original price sizes (its confusing) 2018-03-07 23:47:22 -05:00
John Colvin 4f94f4d6cf synth create - increase error flash duration 2018-03-07 23:40:28 -05:00
John Colvin 55fc66512b synth create - validate leg count when opened 2018-03-07 23:23:02 -05:00
John Colvin 6c6cc79002 synth create - change 'Must select...' to 'Please select...' 2018-03-07 23:19:43 -05:00
John Colvin 11696884d9 synth create - forgot to unhook from some events 2018-03-07 23:19:36 -05:00
John Colvin 7d2f65425b SPARK-619 Synthetic Creation Window should not allow OK if the data for a synth isn't there 2018-03-07 23:07:18 -05:00
John Colvin c910e522a7 SPARK-621 In order ticket the price is initially displayed with a - which
can result in seemingly sending out a negative price
2018-03-07 18:37:13 -05:00
Eric Harding 2d875c18b9 Use generated with() syntax because it's so cool. 2018-03-07 17:27:19 -05:00
Eric Harding c8302c35a7 Fix crash in MDConsumer recovery logic. Attempt to unsubscribe from event that was never subscribed. 2018-03-07 17:27:19 -05:00
Pedro Pinto d116a03ef5 Stop/start shell on build_win 2018-03-07 17:09:52 -05:00
Jake Norbut 611f5c723d SPARK-605 - probably partial; parent/child sorting based on time created 2018-03-07 16:07:58 -06:00
John Colvin 8e1d4e9e27 Merged in SPARK-602 (pull request #7)
SPARK-602 (take 2)

Approved-by: Eric Harding <eric.harding@bluetradesys.com>
2018-03-07 21:05:10 +00:00
John Colvin b6e6c70f4d SPARK-602 (take 2) 2018-03-07 15:53:25 -05:00
John Colvin ca52530b63 reverting mdsource file 2018-03-07 13:53:09 -05:00
John Colvin 30b4293483 SPARK-602 Add facility to delete/hide synthetics 2018-03-07 13:28:52 -05:00
Eric Harding 574def08b7 clean up some comments 2018-03-07 13:24:33 -05:00
Eric Harding 8f57c5f5e8 make 'md dump' tool more user friendly. 2018-03-07 13:18:27 -05:00
Eric Harding cd2a5641de Spark-325 Implement fast synthetic book merge. 2018-03-07 12:55:52 -05:00
John Colvin 20d4ba0279 add has_editable_properties to IOrderTypeVM 2018-03-07 11:54:15 -05:00
John Colvin 03611efecb ladder - fix iceberg revert, and ignore spreader order revert (todo) 2018-03-07 11:47:10 -05:00
John Colvin 0201b01d34 Synthetic Management row default action (show ladder) 2018-03-07 11:47:10 -05:00
Michael Harding da2888eecc restore unintentional changes to linux docker 2018-03-07 11:05:56 -05:00
John Colvin 8c0aff349b SPARK-611 Incorrect synthetic ladder comes up from Synthetic Management form 2018-03-07 10:37:43 -05:00
Michael Harding 21d7cb8d4f Change cancel button order 2018-03-07 10:24:06 -05:00
Michael Harding ed6d92dd64 Synthetic Spreads Icon set ('share' icon) 2018-03-07 10:09:58 -05:00
Michael Harding b82065b094 Update Order Icons 2018-03-07 09:45:13 -05:00
Michael Harding bae0633c51 Ladder cancel buttons 2018-03-07 09:45:13 -05:00
Michael Harding 161cffeeae Restore order badge mouse over 2018-03-07 09:45:13 -05:00
John Colvin f141ff6135 SPARK-567 in synth security creation form the sec picker disappears on click 2018-03-06 23:51:20 -05:00
John Colvin d224527a3c PopupControl doesn't close on background click 2018-03-06 23:11:12 -05:00
John Colvin cf35dd1711 SyntheticManagement - add n_working_orders column 2018-03-06 21:50:09 -05:00
John Colvin 63a628e4cd SyntheticManagement - add security key column 2018-03-06 20:41:15 -05:00
John Colvin 3a4e49938c SyntheticEditor - add ticks to ui 2018-03-06 20:41:14 -05:00
Pedro Pinto 0f28a7f1c2 SPARK-612, Added marker for spreader hedger/quoter order tag 2018-03-06 16:57:20 -05:00
Pedro Pinto d4230502ec Fixed a few bugs in our book generation. 2018-03-06 15:35:24 -05:00
Eric Harding f275385aa4 Disable unnecessarily lenghy unit test. 2018-03-06 15:24:41 -05:00
Pedro Pinto 970bf44751 SPARK-608, Generating our own book. 2018-03-06 14:28:58 -05:00
Pedro Pinto fab0388ae1 Added canary write to shared memory, to detect allocation issues. 2018-03-06 14:28:58 -05:00
John Colvin cf2582a25b maybe fix ladder stuck with nan prices bug 2018-03-06 13:50:02 -05:00
John Colvin cf8faf8c4e split up OrderTypeDefVMS into there own classes 2018-03-06 13:50:02 -05:00
Eric Harding 58be751faa Prevent raw FixedSecurity from being created unintentionally 2018-03-06 13:25:58 -05:00
Eric Harding 2db2af67a0 Shared memory size is limited by default inside docker. 2018-03-06 13:09:20 -05:00
John Colvin 87918da433 move Orders dir to Spark proj base dir 2018-03-06 12:59:15 -05:00
John Colvin b89825876b fills - fix duplicate SortDescriptions bug 2018-03-06 12:51:41 -05:00
John Colvin c91fe35310 rename SyntheticCreationDialog to SyntheticEditorView (it is not only used for creation) 2018-03-06 12:39:21 -05:00
John Colvin 5a72a44d72 make SyntheticDataHelper private to ShowSyntheticEditorHandler 2018-03-06 12:09:34 -05:00
John Colvin 1e2920c8ae remove a bunch of old order references 2018-03-06 11:32:20 -05:00
Pedro Pinto 92be59e0df Cleaning up SparkProtos 2018-03-06 10:02:21 -05:00
Pedro Pinto 457e899dff Working towards our own book. 2018-03-06 10:01:01 -05:00
Eric Harding 20404c0ecf Stop overwriting cpp value with cme_unit_of_measure_qty 2018-03-06 09:42:56 -05:00
John Colvin 7398a353b5 ladder - fix one tick ask market ghost prices bug 2018-03-06 02:58:42 -05:00
John Colvin 3b413cd36a ladder - fix nan prices bug 2018-03-05 22:52:07 -05:00
John Colvin 84f04fb3f0 throttling the ladder refresh time, will check in a better fix tommorrow (it's late) 2018-03-05 22:27:32 -05:00
John Colvin db1966b775 SPARK-470 ladder auto re-centering is incorrect 2018-03-05 21:26:38 -05:00
John Colvin 1692d0c7c7 ladder - don't show 0 (size) on mouse over 2018-03-05 21:08:23 -05:00
John Colvin d19c6894b6 ladder - corner cases for one-sided/empty markets 2018-03-05 20:44:41 -05:00
John Colvin 13cf14d859 fix theoretical bug in SyntheticEditorView (would prob never happen in practice) 2018-03-05 20:44:41 -05:00
Eric Harding bb1449c55e Spark-577 display factory wackyness. 2018-03-05 17:31:15 -05:00
Jake Norbut c59cb19fea SPARK-598: Orderbook Last Message now has tooltips 2018-03-05 14:59:32 -06:00
Taha Afzal a3b850b06d added nymex and cbot entries to jetfix.conf 2018-03-05 11:39:58 -05:00
Eric Harding 8d62eaf15e spark-577 get cash-per-point from market data feed. 2018-03-05 11:23:11 -05:00
Jake Norbut 206f2d3c3c SPARK-599 - Exceptions are now exceptional 2018-03-05 09:56:52 -06:00
Pedro Pinto dc6bce362f Non-limit orders are now also recoverable from disk. 2018-03-05 10:50:07 -05:00
Eric Harding 9939857f17 spark-596 fix tick sizes for exchange spreads 2018-03-05 10:02:46 -05:00
Pedro Pinto 06551dc327 Better build win script 2018-03-05 10:01:59 -05:00
Eric Harding c3490ea5a3 Merged in position_and_working_order_check (pull request #6)
Fix intermittent unit test failure in position_and_working_order_check
2018-03-05 13:59:58 +00:00
Eric Harding bdd00be747 Fix intermittent unit test failure in position_and_working_order_check 2018-03-05 08:55:22 -05:00
Taha Afzal f8d25bf305 fixed qty calc for N legged 2018-03-05 07:36:22 -05:00
John Colvin e0a8dc62c4 ladder/ticket spreader template 2018-03-04 22:51:54 -05:00
John Colvin d7c92855e9 ladder/ticket - stop/stoplimit format stop price with ticks 2018-03-04 17:40:23 -05:00
John Colvin 809d739116 order ticket - flash price/size if invalid 2018-03-04 17:12:43 -05:00
John Colvin fdef25b860 ladder/ticket - validate stop/stoplimit/iceberg parameters 2018-03-04 16:54:24 -05:00
John Colvin dac8031c81 ladder/order ticket - TimeBoxOrder popup 2018-03-04 16:05:09 -05:00
John Colvin e4f63464a1 order modify ticket - remove some redundant code 2018-03-04 14:48:28 -05:00
John Colvin 97ed5dad20 order modify ticket - don't allow modify if price and size are both unchanged 2018-03-04 14:25:48 -05:00
John Colvin cf705553df order modify ticket - center align modify hint 2018-03-04 14:19:17 -05:00
John Colvin 6d1ab82d63 grid filters focus textboxes when popup opens 2018-03-04 14:13:25 -05:00
John Colvin c3340b4389 grid filters - improve style, search text box auto focus, close on escape 2018-03-03 20:34:28 -05:00
John Colvin bdd49ed19e TimeAndSales line endings 2018-03-03 20:19:07 -05:00
John Colvin 31e1789fa3 mview - fix animation adorner transform from scroll changes in filters 2018-03-03 18:59:39 -05:00
John Colvin 24670bfada TickUpDowns default border/background, add TickUpDownNullableDouble (for filters) 2018-03-03 17:25:40 -05:00
John Colvin 56ee3679ee order ticket - fix cancel, close after action, add input-dirty borders 2018-03-03 16:07:54 -05:00
John Colvin 53f88e4c60 ComboBox actually binds Background/BorderBrush, condense really wide lines in generic.xaml 2018-03-03 15:55:53 -05:00
John Colvin 6466c8b727 Synthetic Management fix description filter xaml typeo 2018-03-02 22:42:16 -05:00
John Colvin 7ec535ae3e Synthetic Management Create Time filter uses TimeFilterTemplate 2018-03-02 22:37:14 -05:00
John Colvin c04c9bbd44 Synthetic Management description lists legs, not name 2018-03-02 22:34:11 -05:00
John Colvin 9ef66991af SPARK-582 Create synthetic window is not sorting the legs correctly 2018-03-02 21:02:32 -05:00
John Colvin 2de8c98b57 format_tick function in checked scope, logs and returns 'Overflow' if an Overthrow Ex occurs 2018-03-02 18:50:40 -05:00
Eric Harding 6126c9eefc Test 3 legs. Creating these tests is very time consuming. 2018-03-02 18:30:21 -05:00
Eric Harding 2ce50a17f9 Fix line endings 2018-03-02 18:27:59 -05:00
Eric Harding 36bd9744ef Make test instrument copyable 2018-03-02 18:27:59 -05:00
Eric Harding 88a90a724d Add Deep book and empty market tests 2018-03-02 18:27:59 -05:00
Eric Harding 03d11c6e69 ImportMany script support allows you to drive the launcher with python. 2018-03-02 18:27:59 -05:00
Taha Afzal ef98da320b simplified the error condition detection for the child orders 2018-03-02 17:09:31 -05:00
John Colvin c7675ef2b6 [SPARK-584, SPARK-591] refactor common ladder/ticket code, fix ladder mouse-hover ghost price bug 2018-03-02 17:07:17 -05:00
Michael Harding 34163a720d SPARK-393: yet more icons 2018-03-02 16:07:33 -05:00
Jake Norbut 09c9431374 PnL: PnL Price 2018-03-02 14:58:02 -06:00
Jake Norbut 9400f7e622 PnL: Adding SOD; mockup object for CME session info, not in use yet 2018-03-02 13:17:56 -06:00
Eric Harding 998fb33b59 spark-325 Synthetic Book Merge. Does not yet compute weighted average for partial sizes 2018-03-02 12:37:40 -05:00
Taha Afzal ca3b91afb5 SPARK-593 2018-03-02 10:24:32 -05:00
Eric Harding d3b86b607b Add CompositionContainer to script host. Ready for user 2018-03-02 09:43:32 -05:00
Eric Harding 86ee057e13 Spark script logging improvements 2018-03-02 08:50:08 -05:00
Eric Harding 57b9cfa8d1 python scripting in spark 2018-03-01 22:52:50 -05:00
John Colvin bbf3726241 ladder/ticket default to Limit Order 2018-03-01 18:22:31 -05:00
Jake Norbut 8f34552f2d OrderBook - Disabling grid sorting since it's not compatible with tree representation at the moment 2018-03-01 16:46:13 -06:00
Jake Norbut ffb31b5944 PnL: more filterable columns 2018-03-01 15:40:10 -06:00
Michael Harding 69aba23d2c Fix Button style 2018-03-01 16:36:35 -05:00
Pedro Pinto 11e0c87ee4 SPARK-513, Execution report processing is now idempotent. 2018-03-01 16:29:08 -05:00
Pedro Pinto 4db5399b13 Disabled flaky test. 2018-03-01 16:29:08 -05:00
John Colvin 3b50864b18 SPARK-565 on synth security creation change Add to Add Leg 2018-03-01 15:04:11 -05:00
John Colvin ed148d2673 SPARK-566 on synth security creator the first column should not be editable 2018-03-01 14:26:24 -05:00
Kevin Darby c5eb597965 added P&L test, but need a little more meat here once Jake finishes a few things 2018-03-01 13:22:36 -05:00
Kevin Darby 6d54a25765 adding manual tests 2018-03-01 13:05:27 -05:00
Eric Harding c1d168c605 Do not load deleted synthetics or their metadata. 2018-03-01 12:28:49 -05:00
Eric Harding b1dc722b43 SyntheticSecurityService should publish initial metadata from database. 2018-03-01 12:02:18 -05:00
John Colvin c0aee087bd accidentally added some test code 2018-03-01 12:01:16 -05:00
John Colvin e033ceb0a8 synth man doesn't depend on strategy firing once to show rows 2018-03-01 11:59:56 -05:00
Jake Norbut 6e629119f7 SecurityPicker - Format Synthetics using Name property 2018-03-01 10:40:58 -06:00
Jake Norbut 21ae8ab78f PnL: adding weighted average 2018-03-01 10:24:45 -06:00
John Colvin 60ea25e7f9 ticket/ladder order type dropdown filters items based on the security 2018-03-01 11:18:57 -05:00
Pedro Pinto 0f9fc84085 Get rid of old security db. 2018-03-01 11:10:37 -05:00
John Colvin 06a1d937dc synthetic management add new button prepopulates legs with selected synthetic 2018-03-01 00:11:32 -05:00
Taha Afzal 96e5c5b00e log changes 2018-02-28 23:15:26 -05:00
John Colvin 0888d7066f synthetic management window shows all synthetics, with or without a strategy 2018-02-28 19:48:05 -05:00
Pedro Pinto 2cc62fb9d2 Should address the server crash that Taha. 2018-02-28 22:05:35 +00:00
Michael Harding af2c284b4a SPARK-576: Don't order when recentering 2018-02-28 16:44:38 -05:00
Jake Norbut 18120e3ab5 SPARK-549: OrderBook now has a regex filter for Security column 2018-02-28 15:25:28 -06:00
Jake Norbut e1fbd84b26 PnL - mock up the cpp store 2018-02-28 15:07:32 -06:00
John Colvin 53a59e5f53 add spreader order logic to ticket and ladder 2018-02-28 15:45:03 -05:00
Pedro Pinto 701ed71681 Added price, size to file loaded order in TestOrderMan 2018-02-28 15:24:04 -05:00
Pedro Pinto 1011e196c4 Revert "SPARK-564, Dropped old security DB."
This reverts commit 3c595bc4b5.
2018-02-28 14:54:41 -05:00
Eric Harding 9fab67e938 std::stoi instead of stringstream 2018-02-28 13:35:00 -05:00
Eric Harding 408bff4c82 Add dumpsecurity tool. sparkd md dumpsecurity [security_key list] 2018-02-28 13:06:13 -05:00
Jake Norbut 3ae413a983 PnL: Adding some grid filters 2018-02-28 11:51:11 -06:00
Eric Harding c01ae5afa2 aesthetic change to SyntheticSecurityService api 2018-02-28 11:49:08 -05:00
Taha Afzal 8ac385c53b Fixed docker subrepo 2018-02-28 11:45:31 -05:00
Eric Harding ccc135ef80 add stateful publisher feature to c++ api server 2018-02-28 11:41:10 -05:00
Taha Afzal 20d3c2ad58 logs 2018-02-28 10:22:10 -05:00
John Colvin f83028ab98 ladder - fix invisible orders due to price rounding 2018-02-27 23:58:32 -05:00
John Colvin e63e3c76d3 SPARK-571 Multiple issues with Synthetic Management Form 2018-02-27 23:58:32 -05:00
Eric Harding 6526a9760c Split spark script test server into separate process 2018-02-27 22:06:38 -05:00
Eric Harding 54ad149b6f ShellDiagnosticService test code 2018-02-27 21:55:32 -05:00
Pedro Pinto f1c28bf200 Revert "Enable onixs instrumentSelection filter"
This reverts commit bcb2e068d2.
2018-02-27 18:06:03 -05:00
Pedro Pinto 3c595bc4b5 SPARK-564, Dropped old security DB. 2018-02-27 22:48:11 +00:00
Eric Harding bcb2e068d2 Enable onixs instrumentSelection filter 2018-02-27 17:44:43 -05:00
Jake Norbut a62718765e cmake file per pedro 2018-02-27 16:36:37 -06:00
Jake Norbut fa6e72b1e6 PnL: defaulting to waterfall 2018-02-27 16:33:10 -06:00
Jake Norbut a261c55060 PnL: it's helpful to actually upate when md ticks 2018-02-27 16:26:40 -06:00
Pedro Pinto a89624ca90 SPARK-554, Shell should recover from server bounce now. 2018-02-27 15:54:11 -05:00
Pedro Pinto e18af921d9 Increased timeout in tests some more. 2018-02-27 15:54:11 -05:00
Pedro Pinto 155835e5f2 Added test code to flush out api disconnect problem. 2018-02-27 15:54:11 -05:00
John Colvin 0d443e579e synthetic creation dialog - leg params are properly set before commit 2018-02-27 15:17:15 -05:00
Eric Harding 82cdc9fc32 Spark-340 Return of MDConsumerHandle 2018-02-27 15:08:19 -05:00
Eric Harding bdf15fb383 spark-340 partial. Add functionality required for synthetic execution strategy to reach client 2018-02-27 14:59:22 -05:00
Michael Harding 3f098f36b9 SPARK-527: Order badge context menu 2018-02-27 14:05:43 -05:00
Michael Harding 4f3bd66dac SPARK-526: Middle click to center Ladder 2018-02-27 14:05:43 -05:00
Eric Harding a671890487 Add streaming notification of synthetic metadata changes. 2018-02-27 13:49:39 -05:00
Eric Harding 572a6f1178 Add ShellDiagnosticeServiceServer.proto Not yet implemented. 2018-02-27 13:49:39 -05:00
Michael Harding 55bf38703e Filled/Total 2018-02-27 12:31:10 -05:00
Taha Afzal 437dbd3fb9 Not finding an order key in an order update is not an assert condition - the quoter order could have been cancelled and a new one sent 2018-02-27 10:22:59 -05:00
Taha Afzal 50623c3039 added find_qty_at_price_level to SpreaderUtils 2018-02-27 09:12:57 -05:00
Pedro Pinto 4e1f18c02c Added extra MSGW cert sessions for different groups.
squash! Added a commodities MSGW cert session.
2018-02-27 09:08:38 -05:00
Pedro Pinto 49122cfb20 Added const qualifiers to api Result. 2018-02-27 08:51:44 -05:00
John Colvin 6685ae671f dare i say fixed the ladder cert-price bug 2018-02-26 20:56:38 -05:00
John Colvin e8a49ecf18 ladder check for null depth in _size_from_row 2018-02-26 19:03:55 -05:00
Jake Norbut 5dedd45a35 PnL: Waterfall, you so awesome 2018-02-26 18:00:39 -06:00
John Colvin 0525f3ba0b ladder - more log messages 2018-02-26 18:36:22 -05:00
John Colvin d9974f50e0 fix logviewer textwrapping binding 2018-02-26 18:29:44 -05:00
John Colvin c8d81725cb ugh xaml named elements are false compiler errors, and thus break refactoring 2018-02-26 17:58:44 -05:00
John Colvin 52b69df5f4 ladder fix log toggle headers 2018-02-26 17:56:34 -05:00
Michael Harding 00b35d9d07 SPARK-553: Taking Down the Christmas lights 2018-02-26 17:11:58 -05:00
Michael Harding e6239e878b SPARK-536: Clearly 2018-02-26 17:11:58 -05:00
John Colvin 2800c2bae3 ladder fix typeo in status changed log 2018-02-26 17:11:11 -05:00
Eric Harding 6d9242b355 Spark-552' MDConsumer needs to load real securities before it resolves legs of synthetics 2018-02-26 16:47:52 -05:00
Eric Harding 51bf57eff4 Spark-552 Synthetic Securities not restored from DB 2018-02-26 16:05:24 -05:00
Michael Harding bde83aa111 SPARK-524: Change ladder badge 2018-02-26 16:00:22 -05:00
Michael Harding 7bf8e77999 Colorful cancel icons 2018-02-26 16:00:22 -05:00
John Colvin 3669d878db ladder - add warning logs (to track down cert-price bug) 2018-02-26 15:04:31 -05:00
Michael Harding 0f086fdd59 Fix Blurry Buttons 2018-02-26 13:01:34 -05:00
Michael Harding 3e367eca59 Spark-520, 522, 528: Buttons in the ladder are better 2018-02-26 12:56:14 -05:00
Michael Harding fb76def8ce Return Text to the Default Launcher State 2018-02-26 12:56:14 -05:00
Eric Harding 705bf5b167 Spark-563 return an error if user requests to create a security which already exists. 2018-02-26 12:23:11 -05:00
Eric Harding 06aed6e411 spark-545 insert *or update* metadata 2018-02-26 12:21:18 -05:00
Eric Harding b1dbf5e3ba Spark-562 2018-02-26 11:45:39 -05:00
John Colvin 0022b63ab7 fix update_order_size method 2018-02-26 11:18:37 -05:00
Taha Afzal 347f5357d0 initialized the out values in pahless/paymore functions 2018-02-26 09:50:44 -05:00
Taha Afzal e17888a044 fixing build 2018-02-26 09:43:56 -05:00
Taha Afzal efa8616f69 hooked thepayless paymore prehedge logic 2018-02-25 19:27:47 -05:00
John Colvin f49ec1db03 ladder - make log headers visible by default again (without headers/logs, it looks like a random white box) 2018-02-25 15:32:14 -05:00
John Colvin 84b8eeac75 ladder log viewer headers hidden by default (ctrl + l toggles show/hide) 2018-02-25 14:23:52 -05:00
John Colvin f30055ccfb SyntheticManagement window can create synthetic without any securities selected 2018-02-24 16:02:45 -05:00
Pedro Pinto a63deaac45 What is going on with this subrepo shit 2018-02-24 15:20:07 -05:00
Pedro Pinto 00f44217a4 Fixed clang build. C++ sucks. 2018-02-24 15:19:55 -05:00
John Colvin 87b41b286f ladder log message time stamp in military time 2018-02-24 15:04:59 -05:00
John Colvin c7fd14808e ladder log viewer doesn't automatically grow vertically 2018-02-24 15:03:57 -05:00
John Colvin 72865994ae ladder order-modify logs added in response to changes detected in order state 2018-02-24 14:20:41 -05:00
John Colvin c0adb038ab ladder - change 'Details' button to 'Book' 2018-02-24 13:37:16 -05:00
John Colvin d525c33c2d ladder log viewer uses colors in BTSColors.Orders, added filled_dark and sent 2018-02-24 13:31:06 -05:00
John Colvin b71ae5477b SPARK-523 provide status bar on the ladder to give feedback on last order operation 2018-02-24 12:14:56 -05:00
Eric Harding 40d5bee934 Spark-546 Fix the NullRef with no stack. Still not entirely sure why the ContinueWith solution doesn't work. 2018-02-23 19:40:23 -05:00
Eric Harding 6dda712a61 Add extra safeguard around calling CLR callbacks. 2018-02-23 19:40:23 -05:00
Eric Harding 78644f9f4d Fix error. Protobuf.CopyFrom does not check the type of the argument at compile time :( 2018-02-23 19:40:23 -05:00
Jake Norbut 50aaef5516 PnL - in case my machine starts on fire 2018-02-23 17:10:56 -06:00
John Colvin e2c90bebe2 OrderUtils.working_quantity() returns an int (not susceptible to overfill-overflow) 2018-02-23 17:26:00 -05:00
John Colvin c218f2ef23 NumericSignBrushConverter returns error_brush for nans 2018-02-23 16:15:21 -05:00
John Colvin fce22cfacd ladder - better drag/drop feedback 2018-02-23 15:16:58 -05:00
Taha Afzal 82f059d0f6 spreader reported avg filled price fixed 2018-02-23 15:04:38 -05:00
Taha Afzal b95965684d adding avg price to report 2018-02-23 15:04:38 -05:00
Jake Norbut 90181c9137 SPARK-542: extend security_type() to support Synthetic 2018-02-23 13:52:31 -06:00
John Colvin e7348cb2bb ladder - fix size_from_row null ref 2018-02-23 14:21:52 -05:00
Eric Harding d6a310c5b5 Synthetics have depth 2018-02-23 14:06:54 -05:00
Eric Harding 23e3d5e5ee Additional md asserts. 2018-02-23 14:06:54 -05:00
Eric Harding 2bdd8b517d Record security to db before making it visible. (2 database pain) 2018-02-23 14:06:54 -05:00
Eric Harding d2cd4e233a Validate synthetic symbol is present. 2018-02-23 14:06:54 -05:00
Eric Harding 2aadab900d Move synthetic legs into shared_ptr for faster copy 2018-02-23 14:06:54 -05:00
Eric Harding 5328560827 Add LaunchSettings.json to gitignore 2018-02-23 14:06:54 -05:00
Eric Harding bcfcb2a089 Remove unused ErrorReporter from MDSource 2018-02-23 14:06:54 -05:00
John Colvin 82996efd62 SPARK-531 Ladder - qty input not detecting input is done via keyboard 2018-02-23 13:32:46 -05:00
John Colvin 5ef126462f SPARK-532 stop and stop limit orders need more parameters 2018-02-23 13:18:14 -05:00
John Colvin 4b4d85c303 SPARK-538 crash while moving ladder orders 2018-02-23 13:09:47 -05:00
John Colvin 6d7067637f time filter tick up/downs 2018-02-23 13:05:05 -05:00
Jake Norbut 07b1b73606 SPARK-541: OrderBook avg and last price now use TickDisplayConverter 2018-02-23 08:49:31 -06:00
Eric Harding 5f896555fc Add synthetic creat test tool to sparkcmd 2018-02-23 09:42:41 -05:00
Eric Harding 74b0afd943 fix build 2018-02-22 19:57:11 -05:00
Jake Norbut c8121a54d3 SPARK-539: make sure ParentOrder exists before adding to child list 2018-02-22 17:50:23 -06:00
John Colvin 804c574d4d SPARK-517 One more go at the grid filters 2018-02-22 18:18:19 -05:00
Jake Norbut 54aa5592af ContractPicker - needs an ObserveOnDispatcher 2018-02-22 17:06:39 -06:00
John Colvin 9226809781 synthetic editor disposes contract picker model 2018-02-22 18:00:20 -05:00
Eric Harding 758ce36539 Handfull of synthetic security fixes 2018-02-22 17:41:24 -05:00
Eric Harding 240730de68 Accidental check in. Thanks unit tests! 2018-02-22 16:06:03 -05:00
Eric Harding a7d295051c Spark-495 and Spark-486. 2018-02-22 15:57:52 -05:00
Eric Harding 3311a29d6d Convert TimeStamp::shift* to return a copy rather than mutate original. 2018-02-22 15:57:52 -05:00
Jake Norbut 1168c37d59 PAndL: completing the skeleton 2018-02-22 14:53:59 -06:00
Jake Norbut 05b188030f OrderBook: Adding LastChange back to the OrderBook grid 2018-02-22 13:01:34 -06:00
Pedro Pinto 07621ba838 Increasing time out in tests, probably useless. 2018-02-22 12:41:55 -05:00
Taha Afzal 3d80cf7115 post hedge was modifying orders too fast 2018-02-22 12:30:39 -05:00
Taha Afzal 0f69e1a959 added some asserts, and made the fill case more clear 2018-02-22 12:30:39 -05:00
Pedro Pinto c21dd8d96c Removed dependency on test file for unit tests. 2018-02-22 12:19:05 -05:00
Jake Norbut 1b4651ca24 PAndL - basic skeleton files 2018-02-22 11:08:34 -06:00
John Colvin 430029b4a0 ordervm only resets phantom price when all active price change tasks have finished 2018-02-21 18:04:20 -05:00
Pedro Pinto 37d5a7d96b Fixed unit tests. 2018-02-21 17:34:42 -05:00
Jake Norbut df965f9a10 SPARK-530: OrderBook last_change has been replaced with new create time 2018-02-21 15:05:47 -06:00
Eric Harding e236bafde1 Might help mysterious nullref problem. 2018-02-21 15:32:33 -05:00
Pedro Pinto 97f652576e More sub repo BS 2018-02-21 19:59:35 +00:00
Pedro Pinto 21b4476689 Added creation time to order record. 2018-02-21 14:26:04 -05:00
Taha Afzal 5ba3e74ab9 fixed hedging issue with partially sized fully filled quote fills 2018-02-21 10:39:31 -05:00
Jake Norbut 4c36fbc79a ContractPicker - Exchange list is now sorted (woo hoo BTS exchange) 2018-02-21 08:46:26 -06:00
Michael Harding 6b19cd60af New Ladder Icon 2018-02-21 09:22:25 -05:00
Eric Harding 7a2d24cf54 Spark-496, spark-497. Store and retrieve synthetic securities from a single block of shared memory. 2018-02-20 17:40:12 -05:00
Eric Harding 8a05326f74 Add 'skip stl' to sparkvm launch in vscode. 2018-02-20 17:40:12 -05:00
Pedro Pinto ac0463a631 Allowed loading of orders from disk for testing purposes. 2018-02-20 17:15:11 -05:00
Jake Norbut 0ad42b5049 OrderBook - window should come up when workspace is restored 2018-02-20 15:18:36 -06:00
Eric Harding 175fe92f08 Spark-498 Enable FixedSyntheticSecurity type. 2018-02-20 15:42:52 -05:00
Eric Harding 239d641989 Fix SecurityIDRecorder for spreads which have unresolved legs. 2018-02-20 15:42:51 -05:00
John Colvin 2a4923cbed render nans with '-' 2018-02-20 15:18:59 -05:00
Michael Harding 4caf48347e SPARK-505: two pixels... 2018-02-20 14:02:13 -05:00
Michael Harding e17cb03108 SPARK-512: Center Workspaces Dialog 2018-02-20 14:02:13 -05:00
Pedro Pinto 7890f76b03 Fixed release build for Taha 2018-02-20 13:54:01 -05:00
Pedro Pinto 172d186daa Fixed clang build. 2018-02-20 13:54:01 -05:00
Pedro Pinto 949a98ac67 move dockerfile subrepo pointer 2018-02-20 13:54:01 -05:00
Pedro Pinto 66cf280f1b Removed on dispose logging call to avoid crash on exit 2018-02-20 13:54:01 -05:00
John Colvin 76620647ae order modify ticket first tick goes to working size/price 2018-02-20 13:42:42 -05:00
John Colvin 1a984a3fda ladder - change menu buttons style 2018-02-20 12:15:30 -05:00
John Colvin 528690ab34 SPARK-506 Iceberg order needs to set child member to something 2018-02-19 21:24:33 -05:00
John Colvin 30d9893d10 ladder and order ticket size buttons not focusable 2018-02-19 18:19:53 -05:00
John Colvin 33a79cc636 Ladder - hook up order modify-command 2018-02-19 16:58:48 -05:00
John Colvin 94f689e94d SPARK-474 Show more information in ladder tooltip 2018-02-19 16:51:35 -05:00
John Colvin 4d44e32b34 fix OrderVM.Equals stack overflow 2018-02-19 16:51:34 -05:00
John Colvin 7feda2a1c5 Ladder opens order context menu on ctrl+click 2018-02-19 16:51:34 -05:00
John Colvin 4ad9384f9b LadderSettings does not append calculator buttons on deserialization 2018-02-19 16:51:33 -05:00
Taha Afzal 9f744bbd75 reporting shored up a bit 2018-02-19 15:09:32 -05:00
John Colvin 014971295b ladder retains state 2018-02-19 13:08:51 -05:00
John Colvin 045577bbd1 ladder/ticket size won't tick down across 0 (was going to uint.Max) 2018-02-19 12:19:26 -05:00
John Colvin cb7cb56518 ladder - fix column resize bug 2018-02-19 12:08:41 -05:00
John Colvin beb6bd000c ladder won't send order if resizing column 2018-02-19 00:03:33 -05:00
John Colvin 98112386fa SPARK-489 Resize ladder columns when form resizes 2018-02-18 23:48:03 -05:00
John Colvin 6f1160a2ec ladder orders use hand cursor 2018-02-18 23:26:02 -05:00
John Colvin a27abfb6d4 ladder resizable columns 2018-02-18 20:11:29 -05:00
John Colvin 1b918278f6 wpfhelper.manage_collection_change 2018-02-18 19:05:20 -05:00
John Colvin 37191ca2bb increase ladder revert check box margin 2018-02-17 21:50:21 -05:00
John Colvin cd050b5a00 SPARK-487, SPARK-488 - sprucing up ladder 2018-02-17 21:42:09 -05:00
John Colvin 2acec803c5 obviously this .tmp_proj file was added by mistake 2018-02-17 21:04:33 -05:00
John Colvin 4f5cfc743f SPARK-508 Ladder - defer refresh order price during order-update task 2018-02-17 16:46:07 -05:00
John Colvin cf47f29a14 fix EqualityComparer.Create key comparer 2018-02-17 16:09:19 -05:00
John Colvin 8f5c4c6ea5 fix stackoverflow exception in ObjectHelper.try_convert 2018-02-16 18:46:37 -05:00
John Colvin dcbfadb413 time and sales - fix sorting, add trade key column 2018-02-16 18:46:14 -05:00
John Colvin 707b445e31 SPARK-499 Fills window unsorts on fills 2018-02-16 17:54:23 -05:00
Michael Harding 045b750314 Arrows, Icons, Text 2018-02-16 17:31:11 -05:00
Taha Afzal 8099f36cb6 SPARK-477 2018-02-16 17:18:48 -05:00
John Colvin 737b55abb4 fill time in local am/pm format 2018-02-16 16:27:04 -05:00
John Colvin cbd0104f25 SPARK-509 Fills window is showing inconsistent data 2018-02-16 16:21:22 -05:00
John Colvin 3825c52d08 modify order ticket shows working quantity/price 2018-02-16 15:57:54 -05:00
Jake Norbut 16a2f303f1 OrderBook - Adding Avg Filled (price) back to the grid 2018-02-16 11:14:08 -06:00
Michael Harding fbb0518ba4 SPARK 442: Vertical Launcher 2018-02-16 10:44:18 -05:00
Eric Harding da647680d3 SPARK-493 - Lets not introduce yet another crash on exit 2018-02-16 09:54:55 -05:00
Eric Harding 026e0686be spark-500. Don't throw out the client just because we unsubscribe one subscription. 2018-02-16 09:35:08 -05:00
John Colvin 749f8e8fb4 time filter text prompts 2018-02-15 19:12:08 -05:00
Taha Afzal 42a0695b71 shouldhave gone in the last commit 2018-02-15 18:07:23 -05:00
Taha Afzal cdb90f370c cleaned up the ISpreaderWorker interface for on_order updates 2018-02-15 18:07:23 -05:00
Jake Norbut 3f04a5ab46 OrderBook - savings a few allocations when sorting 2018-02-15 15:59:00 -06:00
Pedro Pinto f849086397 Handled transition of order from disconnected back to connected. 2018-02-15 21:40:37 +00:00
Pedro Pinto 46abf5ae59 Rename OrderServiceServer2 to OrderServiceServer 2018-02-15 21:40:37 +00:00
Pedro Pinto c600cc0caf Canceled orders no longer reset fill qty to 0. 2018-02-15 21:40:37 +00:00
John Colvin 5c66666be9 SPARK-455 change time filter to use begin/end and avoid the extra click to turn the filter on 2018-02-15 16:37:51 -05:00
Jake Norbut 7732d80e10 Order Book - parent/child sorting 2018-02-15 15:21:05 -06:00
Taha Afzal c60103d654 tests adjusted for avg price vs last price 2018-02-15 16:05:01 -05:00
Eric Harding 11a01c895c Merged in review_me (pull request #5)
spark-493

Approved-by: Jake Norbut <jake.norbut@bluetradesys.com>
2018-02-15 21:01:47 +00:00
Eric Harding 198b11efc0 spark-493 2018-02-15 15:33:06 -05:00
Eric Harding 76baa88f40 Use console log level info for debug builds (except for orderman) 2018-02-15 14:40:59 -05:00
Jake Norbut bbb340c1a0 SPARK-435 and SPARK-464 (I think) [thx Eric!] - order parent toggle visibility 2018-02-15 11:40:14 -06:00
Eric Harding 3f250b40f2 Merge branch 'master' of bitbucket.org:bluetradesys/spark into MDScratch 2018-02-15 11:54:10 -05:00
Eric Harding 5f01bf5ea8 Fix up relay unit tests. Detected an unintentional bug benign behavior change. 2018-02-15 11:39:55 -05:00
Taha Afzal 8b01c57691 spreader is not using OrderState::avg_price anymore 2018-02-15 11:05:56 -05:00
Jake Norbut 82424aebe2 SPARK-494 - OrderBook Last Filled now uses last_price instead of average_price 2018-02-15 09:55:02 -06:00
Eric Harding 4adaddbdb7 bugfix: break instead of return causes fall though to assert. 2018-02-15 10:51:26 -05:00
Eric Harding 011165e129 Fix test platform 2018-02-15 10:42:09 -05:00
Pedro Pinto ae7229478e Subrepos suck 2018-02-14 17:53:18 -05:00
Pedro Pinto a360b37e82 Fixed accumulated fill quantiy value. 2018-02-14 17:52:38 -05:00
Pedro Pinto cfa4f8b8b7 Removed duplicate file 2018-02-14 17:52:38 -05:00
John Colvin 28e97640a1 fix LadderTactileAdorner empty size text bug 2018-02-14 17:28:03 -05:00
Eric Harding c824ceed2a Add skip STL to debugger launch command. 2018-02-14 17:15:05 -05:00
Eric Harding 3d8409fd14 Clean up some logging. 2018-02-14 17:14:52 -05:00
John Colvin d67fe21c9c fix mview and time and sales second to last column width 2018-02-14 16:36:34 -05:00
John Colvin bf5e4dbdd3 SPARK-457 Add security key to time and sales 2018-02-14 16:35:08 -05:00
John Colvin 33ad27882c SPARK-456 Add security key to MView 2018-02-14 16:20:57 -05:00
John Colvin 4c2a68cb4b SPARK-458 add security key to fills form 2018-02-14 16:10:54 -05:00
Eric Harding c7bd026457 Inline perf fixes from edge 2018-02-14 16:10:49 -05:00
John Colvin 487b533c3a SPARK-469 remove mutable order related columns in fills window 2018-02-14 16:10:46 -05:00
Eric Harding 1387a8bcf0 Fix from merge. 2018-02-14 15:55:41 -05:00
Eric Harding 228b00e218 merge origin master 2018-02-14 15:34:39 -05:00
John Colvin 31bc756173 SPARK-449 Automatic re-centering does not work 2018-02-14 15:23:33 -05:00
Eric Harding 25051fedb5 add md unit test vscode debug config 2018-02-14 14:49:53 -05:00
Eric Harding c5297185aa Spark-231 2018-02-14 14:28:42 -05:00
Eric Harding ecaf1c13db Delete some unused tests 2018-02-14 14:28:22 -05:00
Taha Afzal 88aebd949b log improvements 2018-02-14 14:28:02 -05:00
Taha Afzal d7d56a7b33 disabling auto recenter in the ladder 2018-02-14 14:28:02 -05:00
John Colvin 0e1be68093 added atm_line setting to Ladder, defaults to bid 2018-02-14 14:21:32 -05:00
John Colvin 6920738f0c delete DialogButtonSkirt, use DialogSkirtOKCancel/OKApplyCancel instead 2018-02-14 13:09:50 -05:00
John Colvin ae1d66ef1e fix handle_error ErrorReporter extension method 2018-02-14 12:48:34 -05:00
Jake Norbut a9744228a0 SPARK-468 - moved security key to near last column; milliseconds now in time field 2018-02-14 10:14:11 -06:00
Eric Harding 1732388b23 Temporarily remove this assert. spark-482 2018-02-14 10:49:22 -05:00
Taha Afzal 93b83d2158 more logs 2018-02-14 09:23:24 -05:00
John Colvin f48c2ed80e SPARK-461 Iceberg order is not filling in show quantity 2018-02-13 20:20:36 -05:00
John Colvin d9bc3348c2 SPARK-452 0 sized orders should not be allowed from the ladder or ticket 2018-02-13 19:18:40 -05:00
John Colvin d5b0ee5eab SPARK-447 Changing the price of a partially filled order 2018-02-13 18:08:32 -05:00
Pedro Pinto b5c75e6cef Better phrasing in dialog. 2018-02-13 17:45:59 -05:00
Pedro Pinto e6023b27e7 This subrepo stuff is baffling 2018-02-13 17:27:23 -05:00
Pedro Pinto 1589355e27 Minor doc change. 2018-02-13 17:26:39 -05:00
John Colvin 75ed72dd0c SPARK-446 Ladder order placement feedback 2018-02-13 16:43:15 -05:00
Eric Harding 3b5aaca062 RecenterCountdown might not have a security yet 2018-02-13 16:21:20 -05:00
Taha Afzal 7f817a47dc log for hedging 2018-02-13 16:03:20 -05:00
Jake Norbut c6be6f63f6 OrderBook - nows allows for unknown securities (Spreader) in orders 2018-02-13 14:45:26 -06:00
Taha Afzal 826f69dcdc Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-02-13 15:21:06 -05:00
Eric Harding 0aa5ccda18 delete[] doesn't like this pointer type. 2018-02-13 14:29:55 -05:00
Eric Harding 045ac9143a Add null check to implicit constructor for Immutable genererated types 2018-02-13 14:13:41 -05:00
Eric Harding c515129d20 Destroy logging after config is initialized 2018-02-13 13:42:02 -05:00
Taha Afzal dd7a400e2d SPARK-462 recovered errors take the spreader to the end state now (not asserting) 2018-02-13 13:10:01 -05:00
Pedro Pinto 1b41f69939 Hopefully fixed bad fill handling bug 2018-02-13 12:34:38 -05:00
Pedro Pinto 64c51c64be Updated docker ptr 2018-02-13 12:34:38 -05:00
Pedro Pinto 7be1bbccfd More civilized string conversions. 2018-02-13 12:34:38 -05:00
Eric Harding 1a2cc6280d md md2_unit tests (2h) 2018-02-13 12:14:29 -05:00
Jake Norbut c98c6cca76 SPARK-459 - OrderBook grid now displays security key 2018-02-13 09:55:09 -06:00
Eric Harding 1f59438363 Synthetic discovery in on_security. Next add to scan_securities to get new ones 2018-02-12 17:30:54 -05:00
Jake Norbut 2378b3cb05 SPARK-460: OrderBook performancce issues - grid is now virtualizing rows correctly 2018-02-12 15:33:44 -06:00
John Colvin 3d7efd5686 implement Security IComparable (not just compare ids) 2018-02-12 15:26:35 -05:00
Taha Afzal 1745a327e7 logs 2018-02-12 15:05:56 -05:00
Michael Harding 88d09a1cf8 SPARK 450: refine workspaces dialog 2018-02-12 10:33:11 -05:00
Pedro Pinto db47b28cbd Fixed MD subscription service in OrderServices. 2018-02-11 16:30:12 -05:00
Pedro Pinto 1d2a21a636 Defaulted console logging to error 2018-02-11 14:42:51 -05:00
Taha Afzal 3b6e8e0076 more logs 2018-02-11 09:27:48 -05:00
John Colvin d73932f7af SPARK-448 Market sheets Working 2018-02-09 21:06:55 -05:00
John Colvin 8b9bd244fe SPARK-444 Double click ladder price column to recenter 2018-02-09 19:11:29 -05:00
John Colvin aa24b881fc fix mview orders update bug 2018-02-09 18:24:24 -05:00
Jake Norbut 6e9d733355 SPARK-445 - Working orders have a distinctive background color 2018-02-09 15:53:55 -06:00
John Colvin d5fec688af mview - inside orders animation responds to market changes 2018-02-09 16:34:28 -05:00
Pedro Pinto c78232554e Reduced output of testorderman. 2018-02-09 15:31:52 -05:00
Jake Norbut 0ca4379859 SPARK-434: OrderBook now has Cancel Selected 2018-02-09 13:04:42 -06:00
Jake Norbut fb61c8522f SPARK-443: Security Picker language 2018-02-09 12:22:31 -06:00
John Colvin 7cd3d4653b remove old order references 2018-02-09 12:17:07 -05:00
Michael Harding cf0d8f7801 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-02-09 12:06:32 -05:00
Michael Harding 67026489ac SPARK-440: Move Ticket button up 2018-02-09 12:06:24 -05:00
Taha Afzal 5058e3ffae more logs 2018-02-09 12:00:26 -05:00
Michael Harding a0bf258fc6 SPARK-431: Change Support to Help 2018-02-09 11:01:10 -05:00
Michael Harding 1b89dae918 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-02-09 10:44:34 -05:00
Michael Harding fbe2f57148 SPARK-407: Tooltips now show on disabled Spark Menu items 2018-02-09 10:40:49 -05:00
Pedro Pinto eb80dde5e2 Fixed order update/cancel at cert. 2018-02-09 10:13:32 -05:00
Pedro Pinto a7d9352755 Added utility to load core dumps.Assumes a specific core name format
This should be set in rc.local:
sysctl -w "kernel.core_pattern=/tmp/core_dump_%e_%p"
2018-02-09 10:12:17 -05:00
Michael Harding 87b0232caf SPARK-432: Support dialog does not require contact info 2018-02-08 15:41:46 -05:00
Jake Norbut 529c55e0db SPARK-441: OrderBook Order Type text now displays correctly in the fancy column 2018-02-08 11:33:07 -06:00
Michael Harding 019cbbbdda SPARK-433: Report a problem 2018-02-08 10:40:25 -05:00
Michael Harding 4f5b0ee1b5 Spark 415: 400<800 2018-02-08 10:40:25 -05:00
Michael Harding 5a3a815cd6 SPARK-416: Sythetics menu 2018-02-08 10:40:25 -05:00
Pedro Pinto 9895c01de8 Refactored orderman2 to orderman 2018-02-08 10:28:59 -05:00
Pedro Pinto 4b0d08d59f Cleaned up file locations for spreader. 2018-02-08 10:07:54 -05:00
Pedro Pinto 494cd327fc Better sim defaults 2018-02-08 13:54:53 +00:00
Taha Afzal 459e6b5044 sec res from the spreader uses the synthetic sec inside the order def (for testing) 2018-02-07 23:34:12 -05:00
Taha Afzal c441b942bb sec res logs more 2018-02-07 22:38:08 -05:00
Pedro Pinto 9b50ec699d Reduced maintenance window for SIM fix session.
For all you hard workers out there.
2018-02-07 19:23:36 -05:00
Taha Afzal af1629007f state machine change to account for on_active in END state 2018-02-07 17:19:09 -05:00
Pedro Pinto 1b88903610 Added support for stop and stop limit orders in testing. 2018-02-07 17:05:17 -05:00
John Colvin 1e533fe4eb SPARK-428 Synthetics: Use the word Synthetic not Synthetic Spread everywhere 2018-02-07 16:32:28 -05:00
John Colvin e5fbb7a8df SPARK-429 Grid filters: select from domain filter should use checkboxes 2018-02-07 16:19:08 -05:00
Pedro Pinto 0a18fba52d Improved support for market orders. 2018-02-07 15:33:29 -05:00
Pedro Pinto 210faa3d1e Logged more sensibly. 2018-02-07 15:33:29 -05:00
Pedro Pinto 5ee5cb97db Fixed test prompt. 2018-02-07 15:33:29 -05:00
Taha Afzal 4d6903301a better log reporting in the spreader 2018-02-07 15:18:25 -05:00
Pedro Pinto 17354c1c07 Moved docker subrepo pointer 2018-02-07 19:38:29 +00:00
Pedro Pinto c401b77f9b SPARK-439 - Added support for spreader orders in test interface. 2018-02-07 19:38:29 +00:00
Pedro Pinto 74fb77cd0a Added some documentation and moved some files around for clarity. 2018-02-07 19:38:29 +00:00
John Colvin 2ad25c13f9 SPARK-437, SPARK-438 -- window heights 2018-02-07 14:35:09 -05:00
John Colvin 5f7d90d320 remove a lot of unused code 2018-02-07 14:07:41 -05:00
Taha Afzal 6b09d1a4d0 fixing the build 2018-02-07 09:57:08 -05:00
Taha Afzal 5f3a5e1834 reproting needed the quantity 2018-02-07 09:47:18 -05:00
John Colvin a30e140555 [SPARK-423] SparkWindow implements IMeasureContentSize, provides windows
with sensible initial size"
2018-02-06 21:37:38 -05:00
Pedro Pinto 560e54075c More refactoring of orderman. 2018-02-06 17:56:39 -05:00
Pedro Pinto 551ac20aaf Cleaning up obsolete orderman code. 2018-02-06 17:06:54 -05:00
Pedro Pinto 842829b4a3 Fixed clang build. 2018-02-06 16:57:56 -05:00
Pedro Pinto 6ae3f62150 Tweaked log viewer script. 2018-02-06 16:03:54 -05:00
Eric Harding 961328c82c Port double rounding fix from edge 2018-02-06 13:32:24 -05:00
Taha Afzal 6f1af3eeff spreader better reporting 2018-02-06 07:45:18 -05:00
John Colvin d2a1f8dab3 SPARK-430 Filters: time filter should have before/after gates 2018-02-05 22:04:01 -05:00
John Colvin 63b87260fc SPARK-424 Time and sales window: first column should be security 2018-02-05 19:00:35 -05:00
John Colvin 24777a4040 SPARK-419 Market View: fills and time and sales commands should bring up filtered views 2018-02-05 18:53:32 -05:00
Taha Afzal bd99b770ed spreader reporting its state 2018-02-05 14:02:38 -05:00
Jake Norbut d3229b9756 OrderBook - low-hanging perf fix (GetHashCode) 2018-02-05 11:11:49 -06:00
Jake Norbut 0d8a7d948b OrderBook - hooking up enter key to default action 2018-02-05 11:09:46 -06:00
Taha Afzal 345c98a5bb SPARK-331 all tests almost done 2018-02-04 22:07:17 -05:00
Taha Afzal 1a6ab53f61 SPARK-331 last spreader test remains after this 2018-02-04 15:21:31 -05:00
Taha Afzal 06ac964e0f SPARK-331 accidentally disabled tests 2018-02-03 19:07:29 -05:00
Taha Afzal d94bf2d569 SPARK-331 spreader on_book 2018-02-03 18:49:06 -05:00
Taha Afzal d259f9824f SPARK-331 spreader working state 2018-02-02 19:45:10 -05:00
Michael Harding 482a76ae3a Add Workspaces dialog to the Settings menu 2018-02-02 16:52:05 -05:00
Eric Harding a1146adbd3 Merge branch 'master' of bitbucket.org:bluetradesys/spark into MDScratch 2018-02-02 15:00:33 -05:00
Taha Afzal 9fdf52141e SPARK-331 spreader start state test completed 2018-02-02 13:57:08 -05:00
John Colvin 3d4d0fc75d AttachedCommands.DoubleClick uses InputBinding rather than DoubleClick event 2018-02-02 12:55:24 -05:00
John Colvin 719703b6e3 mview - fix row Enter Key binding 2018-02-02 12:55:24 -05:00
Pedro Pinto a269d82ee5 Improved log viewing script. 2018-02-02 11:55:25 -05:00
Pedro Pinto 9c59420b3c Fixed a bug in order id generation when we send over 1000 orders 2018-02-02 11:55:25 -05:00
Eric Harding 8c7b11ae5b Fixes for cert market data 2018-02-02 11:33:51 -05:00
Eric Harding b00bbbb582 advance linux docker pointer 2018-02-02 10:57:20 -05:00
Pedro Pinto 707bcf82f3 Added core dump enabling to sparklib 2018-02-01 19:43:43 -05:00
Pedro Pinto 54245295b9 Build tweaks 2018-02-01 19:43:43 -05:00
Pedro Pinto 317f3a8e71 Build tweaks 2018-02-01 19:43:43 -05:00
John Colvin 69cd3a97a3 Fills Window selection highlight stretches across whole grid 2018-02-01 19:38:33 -05:00
John Colvin c8d8c97e1b SPARK-425 Time and sales window: remove Type column 2018-02-01 19:37:51 -05:00
John Colvin dedce259ec SPARK-417 No default action (dbl click or enter) on Mview 2018-02-01 19:27:06 -05:00
John Colvin 5d43b033e6 delete ImportedResources.cs 2018-02-01 19:27:06 -05:00
John Colvin 73e60fe62c Ladder accounts come from OrderFactory 2018-02-01 19:27:05 -05:00
Taha Afzal e5a10ea875 SPARK-331 spreader start state test 2018-02-01 18:03:40 -05:00
Taha Afzal c968b46d83 SPARK-331 spreader start state test 2018-02-01 17:08:01 -05:00
John Colvin 4e329d0baf SPARK-426 Time and Sales window: sparkmenu for ladder and ticket don't seem to work 2018-02-01 16:41:02 -05:00
John Colvin 0aaaeb6687 SPARK-420 Fills Window cleanup 2018-02-01 16:15:23 -05:00
John Colvin c221b427b2 introduce OrdersFactory, nearly retire OrderDataHelper 2018-02-01 15:30:37 -05:00
Jake Norbut 4761b24517 SPARK-406 - duplicates criteria additions no longer possible 2018-02-01 13:48:32 -06:00
Eric Harding 35c6844501 Port fixes from edge to mdp3 to spark. 2018-02-01 13:58:03 -05:00
Eric Harding 7ba2062e21 run_market_datapublishers should have an option to not return. 2018-02-01 13:57:29 -05:00
Eric Harding 4ac7753a4e removed unused windows scripts 2018-02-01 13:31:48 -05:00
Eric Harding 7f6e26edea advance docker/linux repo pointer 2018-02-01 13:31:48 -05:00
Taha Afzal fe67971a9a SPARK-331 hedger tests completed" 2018-02-01 10:36:52 -05:00
Taha Afzal c03cf06738 SPARK-331 hedger tests partially enabled 19/22 2018-02-01 10:19:04 -05:00
Pedro Pinto aec57a13c3 Minor built setup tweaks. 2018-02-01 14:03:15 +00:00
John Colvin 6f311a6278 fills proto 2018-01-31 18:29:03 -05:00
John Colvin a2be509df6 orderbook selection highlight stretches across grid 2018-01-31 18:29:03 -05:00
Taha Afzal 6a949a4d5a SPARK-331 hedger tests partially enabled 17/22 2018-01-31 18:18:53 -05:00
Taha Afzal 0ac00e54d5 SPARK-331 quoter cycle test enabled 14/22 2018-01-31 18:18:53 -05:00
John Colvin df4ff8caf9 left align column header content by default 2018-01-31 18:18:01 -05:00
John Colvin 7352468f7d fix unintended implicit cast of null to Security to SecurityImmutable in fills 2018-01-31 17:17:43 -05:00
John Colvin d7f847ec91 code cleanup 2018-01-31 15:30:11 -05:00
John Colvin 37f915892e SPARK-405 Fix up column names in Mview 2018-01-31 13:54:17 -05:00
John Colvin 709e0ad06f SPARK-404 Remove little frame around Working column in mview 2018-01-31 13:52:44 -05:00
Taha Afzal 855ae306f6 SPARK-331 more tests enabled 13/22 2018-01-31 12:40:14 -05:00
John Colvin ae2f5e6742 clean up OrdersModel on_fill_tuples 2018-01-31 12:22:59 -05:00
John Colvin 8dde742f29 SPARK-409, SPARK-411 2018-01-31 12:22:58 -05:00
Taha Afzal 0b974f56b6 SPARK-331 more tests enabled 11/22 2018-01-30 18:29:11 -05:00
Taha Afzal 9998069280 SPARK-331 more tests enabled 9/22 2018-01-30 18:06:03 -05:00
Taha Afzal ca099313ab SPARK-331 more tests enabled 2018-01-30 18:06:03 -05:00
John Colvin 6c7dc36c4c SPARK-412 In ladder Cancell All/Cancel Buy/Cancel Sell should only send cancels for orders that are in non terminal states (i.e inactive, working, disconnected, pending working) 2018-01-30 17:46:20 -05:00
John Colvin 1db63f12da google proto TimeStamp.FromDateTime expects UTC time 2018-01-30 17:42:18 -05:00
John Colvin d53ac06f6b SPARK-411 Fills Window doesn't seem to be connected to Order Interface? 2018-01-30 17:26:08 -05:00
John Colvin 949de3752d unify prop name in SecurityGrid 2018-01-30 17:26:07 -05:00
John Colvin 1090396286 SecurityGrid was not disposing subscription 2018-01-30 17:26:07 -05:00
John Colvin 563d973023 hide IRXCollection implementations 2018-01-30 17:26:07 -05:00
Taha Afzal b13c55ed28 SPARK-331 just bulldozing through the tests will not work 2018-01-30 14:57:54 -05:00
Pedro Pinto 36f93f1df3 Improved exchange simulator. Now with fewer crashes. 2018-01-29 17:29:21 -05:00
John Colvin 407f329965 move MDSource to daemons 2018-01-29 16:18:19 -05:00
Jake Norbut 903303e542 Order Book Window - Cancel widgets now are only enabled based on order state 2018-01-29 14:36:00 -06:00
Pedro Pinto 855499c5b4 Fixed clang build. 2018-01-29 11:48:06 -05:00
Pedro Pinto 7db43fa2cb Added dynamic lttng back. 2018-01-29 11:48:06 -05:00
Pedro Pinto 78bcca871c Removed linking to lttng until we can figure shared/static linking 2018-01-29 11:31:58 -05:00
Pedro Pinto 5ea0f5010f Added lttng trace support. 2018-01-29 11:08:22 -05:00
Pedro Pinto 144be5e816 Fixed fix buffer allocation. 2018-01-29 08:51:23 -05:00
Pedro Pinto cf8a79201d Fixed MergeByKey so that it can take references. 2018-01-29 08:51:23 -05:00
Pedro Pinto 0882966138 Made sure that native orders report their last msgs. 2018-01-29 08:51:23 -05:00
Pedro Pinto 1aa4d4d69d Work towards dspark. 2018-01-29 08:51:23 -05:00
Pedro Pinto 74528bfa8f Fixed clang build. 2018-01-29 08:51:23 -05:00
Pedro Pinto ca5faa206f Changed jetfix conf default to account for cert 2018-01-29 08:51:23 -05:00
Pedro Pinto 1f56d89c33 Updated container 2018-01-29 08:51:23 -05:00
Pedro Pinto 2f3ed3f621 Added a few notes. 2018-01-29 08:51:23 -05:00
Taha Afzal 84e145f0be SPARK-331 getting the tests back (6/22) 2018-01-28 17:24:04 -05:00
John Colvin 87d562a753 MarketView - fix show OrderBook side filter 2018-01-27 17:44:41 -05:00
John Colvin 0ce9d86e4b organize SparkTags 2018-01-27 17:37:24 -05:00
John Colvin c258f57385 remove unused code 2018-01-27 17:36:45 -05:00
John Colvin 4b230f489c SPARK-402 Investigate tick down for non decimal products 2018-01-26 17:22:50 -05:00
John Colvin 5089bdc702 TimeAndSales - remove row header color 2018-01-26 16:48:59 -05:00
John Colvin 9ca2a479e6 Fills - remove row header color 2018-01-26 16:43:15 -05:00
John Colvin e71b6bbb73 MarketView - working orders hyperlinks to OrderBook 2018-01-26 16:36:18 -05:00
John Colvin 7a712fbaf2 MarketView - reduce slowness with large security sets 2018-01-26 15:55:29 -05:00
Taha Afzal 332b7380be SPARK-331 getting the tests back (3/22) 2018-01-26 13:35:28 -05:00
Taha Afzal 2ec26b390f SPARK-331 test_common integrated with orderman2 2018-01-26 12:47:55 -05:00
Taha Afzal 41c925f593 SPARK-331 Hedger States done have strings in them anymore 2018-01-26 09:57:59 -05:00
Taha Afzal a14b8642cc SPARK-331 ChildOrders arre handled through SpreadChildOrderState 2018-01-26 00:15:27 -05:00
Taha Afzal ac427f5102 SPARK-331 Spreader external classes wrapped in interfaces 2018-01-25 23:47:27 -05:00
Kevin Darby afe100455c buildspark, clientbuild, jenkinsbuild. We need more scripts! 2018-01-25 13:25:21 -05:00
John Colvin 9307eceb0e MarketView observes securities from criteria (no longer depends on hard set) 2018-01-25 12:05:10 -05:00
Michael Harding 969253dbc9 SparkMenu/Toolbar refinements 2018-01-25 12:00:46 -05:00
Michael Harding af6356f2f7 Removing another border 2018-01-25 11:20:16 -05:00
Taha Afzal f51bbf0c3d SPARK-331 Adding on_transition to Quoter 2018-01-25 08:02:06 -05:00
John Colvin 4af07c358b fix BufferLatest 2018-01-24 19:06:29 -05:00
Kevin Darby 205de4cc54 ready for cert, but still hitting sim for now 2018-01-24 17:58:36 -05:00
Taha Afzal ff217c2007 SPARK-331 Remove old init() from Quoter 2018-01-24 17:48:53 -05:00
Kevin Darby 51ddea62d1 target .net 471 and change build scripts to generate portable PDBs to facilitate debugging in vscode 2018-01-24 17:37:37 -05:00
John Colvin 798fc8f7ff remove unused change securities callback in FillsWindow 2018-01-24 17:29:30 -05:00
John Colvin 6b6721d93f fix null ref in FillsWindow.Dispose() 2018-01-24 17:25:58 -05:00
John Colvin 4d8a08fa66 SPARK-385 in time and sales drop synthetic spreads command 2018-01-24 17:25:01 -05:00
John Colvin 4c5b0e5a66 SPARK-384 in time and sales provide default action 2018-01-24 17:19:36 -05:00
John Colvin 117dae64c9 TimeAndSales protomember indices 2018-01-24 17:19:36 -05:00
John Colvin 1695150841 TimeAndSales - use CustomOrderDefinition.OrderType for order type col 2018-01-24 17:19:35 -05:00
John Colvin 18c17f938d SecurityGrids - fix CurrentItem bindings and related command-parameter-observables 2018-01-24 17:19:35 -05:00
Jake Norbut 8638c807e4 Ladder - change on day is now sign-sensitive 2018-01-24 15:08:56 -06:00
Taha Afzal d3916bf41a SPARK-331 Added SpreaderOrder new time event 2018-01-24 14:58:58 -05:00
Jake Norbut b87b4eaa07 SPARK-400: OrderBook price now shows ticks 2018-01-24 13:34:57 -06:00
John Colvin 94fab05f83 Fills - row-selection highlight spans whole grid 2018-01-24 14:18:16 -05:00
John Colvin 1d51e2170b TimeAndSales - row-selection highlight spans whole grid 2018-01-24 14:17:32 -05:00
John Colvin 16429d4e61 fix type-o in SecurityRow object.Equals override 2018-01-24 14:14:05 -05:00
John Colvin 51cf21b424 SPARK-396 Modifying Order ticket size crashes it 2018-01-24 14:05:43 -05:00
John Colvin e11d85021f fix RXObservable use of Observable.Buffer, add BufferLatest extension 2018-01-24 13:58:16 -05:00
John Colvin 9a5375a4f2 SecurityGrids use id based security IEqualityComparer 2018-01-24 13:58:16 -05:00
Jake Norbut 2cb372211d SPARK-397: Security Picker remove box now supports multiselect 2018-01-24 11:20:18 -06:00
John Colvin b71789574d fix SparkCommandParamObserver raiseCanExecuteChanged, appropriately disable spark menu items 2018-01-24 01:12:08 -05:00
John Colvin 75e9c2349d fix null ref exception in ViewModelBase.Property value setter 2018-01-24 01:10:01 -05:00
John Colvin 5993d21bfc mview - security header cell style based on default style 2018-01-24 01:07:32 -05:00
John Colvin db93d35c95 SPARK-379 in mview do not use header color inside grid row 2018-01-24 00:38:15 -05:00
John Colvin 4b9b37f6df SPARK-388 in fills get rid of all commands 2018-01-24 00:34:30 -05:00
John Colvin 3440af355f SparkWindow hides menu if no Commands present 2018-01-24 00:34:00 -05:00
John Colvin 225fb2b595 SPARK-387 in fills use single row selection 2018-01-23 21:50:31 -05:00
John Colvin ca5ec59db3 SPARK-383 in time and sales use row selection 2018-01-23 21:44:56 -05:00
John Colvin 0efcec43a0 MarketView - change CurrentCell binding to CurrentItem(row) binding 2018-01-23 21:40:07 -05:00
John Colvin d884114fc2 SPARK-394 Change Ladder right click functionality 2018-01-23 21:29:13 -05:00
John Colvin 5654e79535 get rid of old unused drag/drop diagnostics logger class 2018-01-23 21:29:13 -05:00
Taha Afzal 01d10b516b SPARK-331 Added SpreaderChildOrder re-init 2018-01-23 17:25:33 -05:00
John Colvin a4e62f6af5 SPARK-378 in mview use row selection 2018-01-23 16:31:07 -05:00
John Colvin 2902eb5f6c SecurityGrid hides IHandleRowSelection imp 2018-01-23 16:21:47 -05:00
John Colvin c504229532 MarketView uses [new] OrdersModel 2018-01-23 15:49:22 -05:00
John Colvin fd395cbd27 AttachedCommands.DoubleClick uses FrameworkElementLifeDependency 2018-01-23 15:49:22 -05:00
Taha Afzal 9524f16798 SPARK-331 Hedger is using orderman2 2018-01-23 15:03:15 -05:00
Jake Norbut 0ec4061868 SPARK-398: Security Picker double click behavior now calls OK and Remove RaiseCanExecuteChanged 2018-01-23 13:45:50 -06:00
Jake Norbut b44d3c869e SPARK-350: Modify Order behavior changes 2018-01-23 13:36:13 -06:00
Taha Afzal 8c24936702 SPARK-331 Quoter is using orderman2 2018-01-23 12:36:01 -05:00
Taha Afzal 1ecc33fb6c SPARK-331 IQuoterStateWorker interface changedto accomodate orderman2 2018-01-23 12:36:00 -05:00
Jake Norbut 2bcaab2fd6 Security Picker - Set selected index to 0 on load so that all listboxes are initially populated 2018-01-23 10:36:40 -06:00
Taha Afzal 24f7519beb SPARK-331 ISpreaderStateWorker interface now deals with orderman2 completely 2018-01-22 23:30:26 -05:00
Taha Afzal 9cf100650c SPARK-331 Removed WaitingForFirstConn state 2018-01-22 19:05:55 -05:00
Taha Afzal ff82df6e99 SPARK-331 ISpreaderStateWorker getting rid of on_external_error and on_disconnect 2018-01-22 18:38:48 -05:00
Taha Afzal 70aa373a8f SPARK-331 (Hedger is using new book) 2018-01-20 21:07:42 -05:00
Taha Afzal 5c3799e2aa SPARK-331 (deleting old Book headers from Quoter) 2018-01-20 20:48:03 -05:00
Taha Afzal 752556d716 SPARK-331 (Using orderman2::Book) 2018-01-20 20:39:38 -05:00
Taha Afzal cfaad8ee01 SPARK-331 Intergaring with orderMan2 2018-01-19 23:01:11 -05:00
Taha Afzal 985e3d57fd SPARK-331 Intergaring with orderMan2 2018-01-19 20:29:25 -05:00
Michael Harding c2180c1e71 Secret Expander button 2018-01-19 19:02:32 -05:00
Taha Afzal 8123512269 SPARK-331 Intergaring with orderMan2 2018-01-19 16:38:39 -05:00
John Colvin 235e8b397f SPARK-266 create synthetic add/remove leg functionality; add
SyntheticSpreadsMangement window; CreateSynthetic add/remove leg functionality
2018-01-19 15:48:10 -05:00
Michael Harding a0bfedce82 Spark 365 2018-01-19 15:40:15 -05:00
Jake Norbut a1c1e7e8d7 Security Picker - broke single selection mode 2018-01-19 14:39:15 -06:00
Michael Harding 1b8cbc1127 Hide unused launcher menu items 2018-01-19 14:16:43 -05:00
Michael Harding 69a6d97852 Spark 358, 359 2018-01-19 14:16:43 -05:00
Taha Afzal cfa868921a SPARK-331 Intergaring with orderMan2 2018-01-19 14:10:02 -05:00
Taha Afzal 2282a814d8 SPARK-331 Intergaring with orderMan2 2018-01-19 13:34:09 -05:00
Jake Norbut 4834647e56 SPARK-367 - double click now takes focused item regardless of selection 2018-01-19 11:52:32 -06:00
Michael Harding 23067caf89 About Spark window now Says Spark 2018-01-19 12:45:55 -05:00
Michael Harding 9dcf4cb530 Security picker title is now an action 2018-01-19 12:34:35 -05:00
Michael Harding df779af56a Spark Menu/toolbar Item names 2018-01-19 12:34:10 -05:00
Michael Harding 343727e862 Borders 2018-01-19 12:33:02 -05:00
Jake Norbut 6c8135ec93 refactor SecurityImmutable sorting by exp 2018-01-19 09:13:31 -06:00
Taha Afzal 2681dd5b35 SPARK-331 Intergaring with orderMan2 2018-01-18 23:27:02 -05:00
Jake Norbut 525e11fb32 SPARK-342: picker sort by exp 2018-01-18 18:03:38 -06:00
Jake Norbut 0319667b2d some of SPARK-367; Security Picker listboxes must have a selection to populate the next one over 2018-01-18 17:25:41 -06:00
Jake Norbut 55f67cd54b SPARK-373: order state enums to Title Case 2018-01-18 13:56:51 -06:00
Jake Norbut e0c31e8749 OrderBook - tweaking date and time format string 2018-01-18 12:44:04 -06:00
Jake Norbut f1e479503f SparkCommands - Cancel Orders text changed to Cancel All Orders 2018-01-18 12:42:53 -06:00
John Colvin 336f171d08 SPARK-391 in fills use real OrdersModel 2018-01-17 18:11:16 -05:00
John Colvin ab02ef44e5 SPARK-386 in fills remove security picker preamble 2018-01-17 15:42:32 -05:00
John Colvin ec563ab5ab SPARK-382 in time and sales rename update securities to change securities 2018-01-17 14:22:26 -05:00
John Colvin 61a55c4d0a SPARK-377 in mview rename update securities to change securities 2018-01-17 14:21:54 -05:00
John Colvin 0c49c1fc93 SPARK-380 in mview provide hyper links in bid/ask size 2018-01-17 14:00:44 -05:00
Eric Harding 68b407387c work in progress 2018-01-17 08:20:26 -05:00
John Colvin 7cd7358b60 OrderTicket - use Limit as fallback selected_order_type 2018-01-16 20:25:33 -05:00
John Colvin 96223b5d61 OrderTicket - fix selected_order_type binding 2018-01-16 20:24:05 -05:00
John Colvin 12bdbd3e04 SPARK-389 Ticket crashes (from launcher) 2018-01-16 20:11:10 -05:00
John Colvin 70a8993234 add Create Synthetic SparkCommand to MarketView 2018-01-16 19:46:26 -05:00
John Colvin 748cccedca CellSelectionMapper removes row from selection map if no columns are selected 2018-01-16 19:46:25 -05:00
John Colvin ba49bb854e SparkWindows use selected_securities_observable() in SparkCommands 2018-01-16 19:46:25 -05:00
John Colvin 815d073a72 subscribe and handle SyntheticCreate/Strategy tags 2018-01-16 19:46:25 -05:00
John Colvin 1ff6dae378 move Synthetic files into Modules/Spreader dir 2018-01-16 19:46:25 -05:00
John Colvin b390000dd5 remove old, unused code 2018-01-16 19:46:25 -05:00
John Colvin c8a6aa68ae Factor out common ErrorHandler behavior to generic extensions 2018-01-16 19:46:24 -05:00
Jake Norbut 8af2a7fa1c SPARK-371 2018-01-16 17:00:57 -06:00
Jake Norbut bb8298e306 SPARK-374 2018-01-16 12:35:52 -06:00
Jake Norbut f5d6a968e3 SPARK-370 2018-01-16 12:35:02 -06:00
Jake Norbut 582fbec3d4 SPARK-369 and SPARK-372 2018-01-16 12:31:48 -06:00
Taha Afzal 6cfa22c96b SPARK-331, Adding OrderBuilder creation to SpreaderUtils 2018-01-16 12:59:33 -05:00
Jake Norbut 108b5056b6 SPARK-346 2018-01-16 11:39:22 -06:00
Jake Norbut 8a39f08634 moving formatted name cache so non-glbx spreads can make use of it as well 2018-01-16 11:19:38 -06:00
Jake Norbut 4e6e97abe1 SPARK-341 2018-01-16 10:32:35 -06:00
Eric Harding 6d256ffa7f Fix copy constructor and c# MDConsumerHandle blit code 2018-01-16 10:22:06 -05:00
Jake Norbut dc42247c57 SPARK-342 2018-01-16 09:17:26 -06:00
Eric Harding 97ef233dfe Implement misc function 2018-01-16 09:37:36 -05:00
Eric Harding 5f7d4df386 merge from master 2018-01-16 08:24:14 -05:00
John Colvin 29597855c0 SPARK-337 OrderVM.try_change_price should not ignore result of calling order_gateway to change the price. 2018-01-15 17:27:43 -05:00
John Colvin 643677b3b0 Ladder uses OrderRecordImmutable order template 2018-01-15 17:27:34 -05:00
John Colvin 7540617425 buildsparkd.cmd accepts d/r arguments (debug/release) 2018-01-15 14:01:39 -05:00
Taha Afzal 5323394cb4 SPARK-331, Adding sec res to SpeaderUtils 2018-01-14 16:01:57 -05:00
Taha Afzal a1676c74af SPARK-331, Integrating SpreaderStartStateWorker with new Order 2018-01-14 16:01:57 -05:00
John Colvin 4dafd0da9c SPARK-355 Ladder size should default to zero 2018-01-12 18:26:51 -05:00
Jake Norbut 59702d4562 Contract Picker - ListBox is sorted by ToString (not good) 2018-01-12 17:21:36 -06:00
John Colvin 508161f12b OrderTicketVM correctly sets the OrderDef's side before sending 2018-01-12 18:05:41 -05:00
John Colvin e22090c76c ShowOrderTicketHandler uses valid OrderDefinition defaults 2018-01-12 18:00:18 -05:00
John Colvin 8495c3ecf1 SPARK-348 Nonworking orders should not be displayed in ladder 2018-01-12 17:49:18 -05:00
Eric Harding b2033cf52e spark-338 more complex than it looked 2018-01-12 17:36:29 -05:00
Jake Norbut 1dc084ac93 OrderBook - double click to modify, context menu, some dead code removal 2018-01-12 12:50:42 -06:00
Pedro Pinto 7656810934 Fixed clang build. 2018-01-12 10:15:18 -05:00
Pedro Pinto 5d930d40bf Fixed NaN price in order entry. 2018-01-12 10:15:00 -05:00
Pedro Pinto 750b166d82 Made logging lazy with respect to msg arg evaluation. 2018-01-12 09:58:45 -05:00
Eric Harding 2935368f66 fold this in 2018-01-12 08:50:23 -05:00
Eric Harding 162cd66fee This might work 2018-01-11 22:00:18 -05:00
John Colvin 5ed39dee62 hook up OrderTicket/Modify to new OrdersModel 2018-01-11 17:33:07 -05:00
Jake Norbut 2b74fe79f6 Complete Order template so we can send orders to sim 2018-01-11 15:12:21 -06:00
Eric Harding 7bb3758bae Merged MDTempBranch into master 2018-01-11 15:15:15 -05:00
Michael Harding 1549c4d4f4 Replace menu icon with expander arrow in spark menus (tool bars) 2018-01-11 15:09:56 -05:00
Eric Harding af5ffad7aa Merge branch 'master' of bitbucket.org:bluetradesys/spark into MDTempBranch 2018-01-11 14:56:00 -05:00
John Colvin b384afb8e4 revise new order model Ladder changes (per eric's comments) 2018-01-11 14:30:37 -05:00
John Colvin c01b630222 Merge branch 'new-order-model' 2018-01-11 14:05:24 -05:00
Jake Norbut f766edbbb7 OrderBook - populating cancel commands 2018-01-11 12:19:47 -06:00
John Colvin 19230dac85 Merge remote-tracking branch 'origin/master' into new-order-model 2018-01-11 11:45:05 -05:00
Pedro Pinto 074f0cbeea Fixed market orders 2018-01-11 00:01:16 +00:00
John Colvin c3f7fdaa6f removing unused _test_data in OrdersModel 2018-01-10 17:55:38 -05:00
Eric Harding 7cfc556ea2 Fix typo in SQL 2018-01-10 17:34:52 -05:00
Jake Norbut 1b48adfc99 OrderBook Grid - saves and restores filter and sort criteria 2018-01-10 16:08:36 -06:00
Eric Harding 013f8ed184 run SyntheticSecurityService in main 2018-01-10 16:58:11 -05:00
Eric Harding 6ec7443677 spark-335 Hide details of syntheticsecurityservice in preparation for using in mdconsumer. 2018-01-10 16:57:44 -05:00
John Colvin 415dc4f580 SPARK-330 Ladder - hook up [new] OrdersModel 2018-01-10 16:53:30 -05:00
John Colvin 6e9857379c deleting SampleOrderService 2018-01-10 16:12:17 -05:00
Jake Norbut 26cfafd6b0 more of SPARK-328 - adding filtering to grid 2018-01-10 13:22:11 -06:00
John Colvin 70181f1158 OrdersModel.on_orders uses service (not test data)' 2018-01-10 14:03:04 -05:00
Pedro Pinto 5d97bde3bf Improved test harness for order manager. 2018-01-10 11:39:09 -05:00
Pedro Pinto 0c48b7f0b2 Fixed a few bugs in iceberg order. 2018-01-10 11:39:09 -05:00
Eric Harding 9d62b4592e spark 334 Load/save security metadata 2018-01-10 11:19:39 -05:00
Jake Norbut ae5820f187 fixing RegexFinder filter 2018-01-10 09:44:24 -06:00
Michael Harding 1b7cb04b5b Icons and Blue 2018-01-10 09:37:06 -05:00
Eric Harding dba3c541be SyntheticSecurityService spark-322 2018-01-09 18:17:47 -05:00
Pedro Pinto 3afe48a446 Added a few more notes for spark. 2018-01-09 16:18:39 -05:00
Pedro Pinto 3b14feae59 Finished first cut of iceberg order. 2018-01-09 16:18:39 -05:00
Pedro Pinto 1d8891e23b Made ChildOrder a bit easier to use. 2018-01-09 16:18:39 -05:00
Eric Harding d0d5706a03 Add market_segment to shared memory dumper 2018-01-09 10:13:06 -05:00
John Colvin a2b215091a remove RegexOptions.Compiled from camel_to_title_case fn 2018-01-08 20:15:25 -05:00
Pedro Pinto ea64fad8f1 Initial cut of iceberg order. 2018-01-08 12:23:24 -05:00
Pedro Pinto e6f7cc9842 Added a bit more logging. 2018-01-08 11:58:14 -05:00
Jake Norbut 0d5bf06587 More of Spark-328 2018-01-08 09:22:54 -06:00
Eric Harding 4a84764dde Simplify SecurityIDRecorder - have it record securities to DB when key is assigned. 2018-01-05 21:36:13 -05:00
Taha Afzal e7ecf32423 SPARK-331, SpreaderOrder state machine interface has the new Order calls now 2018-01-05 17:20:22 -05:00
Taha Afzal 5b4996295b SPARK-331, SpreaderOrder derives from the the new Order base class 2018-01-05 16:30:08 -05:00
Eric Harding fcc29ec2d1 Load security db in mdp3 startup 2018-01-05 12:35:17 -05:00
Pedro Pinto ff613f8d5c Fixed a few bugs in native order management. 2018-01-05 11:52:04 -05:00
Pedro Pinto 7e5211ad59 Update docker container. 2018-01-05 11:02:38 -05:00
Pedro Pinto 638ff85b3a Adding support for more native order types.
Market, Stop, Stop Limit
2018-01-05 11:02:31 -05:00
Jake Norbut 0e7f911b22 Order Book - some of SPARK-238; in case machine starts on fire 2018-01-04 15:15:07 -06:00
Taha Afzal e397816a84 SPARK-331, removing derivation from SpreaderBase 2018-01-04 15:17:45 -05:00
Taha Afzal 1926802a7b Merge branch 'master' of bitbucket.org:bluetradesys/spark 2018-01-04 14:28:22 -05:00
Taha Afzal a7f93091e8 SPARK-331, removing old SpreaderOrderMan 2018-01-04 14:28:11 -05:00
Eric Harding d97b4db80a Fix SecurityDB on windows so I can use it as a no-op for now 2018-01-03 17:23:28 -05:00
Eric Harding 4a6e31deb6 spark-320 implement securitydb 2018-01-03 17:14:57 -05:00
Taha Afzal 90f5a5d078 docker/linux 2018-01-03 17:07:24 -05:00
Pedro Pinto 279fbc9f13 Fixed clang build 2018-01-03 21:58:47 +00:00
Pedro Pinto 40627ffee7 Minor changes. 2018-01-03 16:54:50 -05:00
Taha Afzal d1861cb404 SPARK-327 (restrcutured SpreaderBookkeepingData to be more efficent) 2018-01-03 15:00:34 -05:00
Eric Harding 8fe166633d Add .vscode to excluded files for replication to linux 2018-01-03 12:50:02 -05:00
Eric Harding 7316757164 Add -t to buildsparkd to get colors to show across ssh. 2018-01-03 12:49:42 -05:00
Pedro Pinto 606e62ab69 Order execution/cancel/update works.
Need more testing, but looking good.
2018-01-03 11:22:30 -05:00
Pedro Pinto 1a79dcbfe0 Minor update to container. 2018-01-03 11:22:19 -05:00
Pedro Pinto 207b7d7c52 Minor build tweaks. 2018-01-03 08:39:20 -05:00
Pedro Pinto 7bf24f01c4 Fixed a few bugs in the order manager. Almost there. 2018-01-03 08:39:20 -05:00
Eric Harding d7761125ff Add WindowsQuick c_cpp profile for vscode. Mostly disables tag parser which was consuming 8+ hours of cpu time on launch. 2017-12-29 19:27:26 -05:00
Pedro Pinto 0737e2af58 Started to remove old order service. 2017-12-29 17:27:48 -05:00
Pedro Pinto 8b12d7c475 Updated orderman client cli to use new service. 2017-12-29 17:27:48 -05:00
John Colvin b01d7bc1c1 darken DataGrid SelectedRowBackground for clearer distinction in RowHeaderCell style 2017-12-29 16:23:38 -05:00
John Colvin 8c851283e2 DataGrid RowHeaderCell background indicates IsSelected 2017-12-29 16:23:38 -05:00
Pedro Pinto 994580a40e Fixed build. 2017-12-29 15:58:53 -05:00
Pedro Pinto 672aa14990 Order service boots, connects to gateway. More tests in order. 2017-12-29 15:58:53 -05:00
Pedro Pinto 07a3f99f78 Added a log pretty-printer and precise time stamps to log msgs.
We now get a total order for log messages that makes sense and also
the possiblity of measuring the time between any log messages
precisely. This can be used to provide latency logs for the spreader
or any other critical part of the system.
2017-12-29 15:58:53 -05:00
Pedro Pinto e981bfb7ba Changed polling mechanism in mercury to avoid using concurrent queue
This avoids the overhead of pushing/poping from the queue for polling
actors.
2017-12-29 15:58:53 -05:00
Pedro Pinto a066e44da7 Prettier logging. 2017-12-29 15:58:53 -05:00
Pedro Pinto 0e6f37d6ee Improved logging with respect to threading information. 2017-12-29 15:58:53 -05:00
Pedro Pinto 67342349d5 Improved log readability. 2017-12-29 15:58:53 -05:00
Pedro Pinto 2f47dd8bcf Cleaned up a bit. 2017-12-29 15:58:53 -05:00
John Colvin 0a21fcdebd fix MarketView and TimeAndSales price columns' sort 2017-12-29 15:55:31 -05:00
John Colvin c879e5b52a undo last push (live filtering already implemented, doh!) 2017-12-29 15:25:54 -05:00
John Colvin 79681c7bdf grid column filters live filtering (i.e respond to row value changes) 2017-12-29 15:24:21 -05:00
John Colvin 8f6b94ddd6 remove StatePublisher and StateSubject, add SingleValuePump 2017-12-29 14:26:56 -05:00
Taha Afzal 1e69d8967e Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-29 14:01:04 -05:00
Taha Afzal e2d77e684c Post Hedging hooked to SingleFillHegder 2017-12-29 14:00:57 -05:00
John Colvin b4f1615ee9 simplify SparkCommandParamObserver 2017-12-29 13:09:44 -05:00
John Colvin 2d049e0dce forgot to bind columns' FilterActive in Fills and TimeAndSales 2017-12-29 13:09:44 -05:00
Taha Afzal dc32824373 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-28 19:59:03 -05:00
Taha Afzal bac1f12665 Post hedge params added 2017-12-28 19:58:56 -05:00
John Colvin cd914d6cbf MarketView minor code style 2017-12-28 18:50:33 -05:00
John Colvin caf32dda5c SPARK-211 / SPARK-262, SPARK-300 / SPARK-304 - fills... 2017-12-28 18:50:33 -05:00
John Colvin 180ece821a MarketView default sorting criteria 2017-12-28 18:50:33 -05:00
John Colvin 663555ffca SPARK-300 / SPARK-301, SPARK-324 2017-12-28 18:50:33 -05:00
John Colvin 2a18362735 fix grid time filter 2017-12-28 18:50:32 -05:00
John Colvin 1c97648562 common grid filters ignore null states in load_state 2017-12-28 18:50:32 -05:00
John Colvin a73d1e3fb9 add Current() method to StatePublisher and StateSubject 2017-12-28 18:50:32 -05:00
John Colvin 04405be4a8 GenericCollectionExtensions new c# styling 2017-12-28 18:50:32 -05:00
John Colvin 4ecb2eacb4 add ToLArray() => ToList().ToArray() global extension 2017-12-28 18:50:32 -05:00
Taha Afzal 39434506dc comments 2017-12-28 15:06:26 -05:00
Taha Afzal 0223bcd817 Spreader state workers access bookkeeping_data is accessed via a function 2017-12-28 11:41:02 -05:00
Taha Afzal 868c4e0e6d cleanup 2017-12-27 18:38:49 -05:00
Taha Afzal 4093654258 added a few asserts 2017-12-27 16:50:47 -05:00
Taha Afzal 6dca404da2 SPARK-311 (IQuoterStateWorker name change) 2017-12-27 13:34:11 -05:00
Taha Afzal 97eefceec0 SPARK-311 (SpreaderOrderUpdateMessage name change) 2017-12-27 12:44:30 -05:00
Taha Afzal 7e721bed08 Fixing build 2017-12-27 11:54:20 -05:00
Taha Afzal 4f1ac553de SPARK-311 (SpreaderOrderUpdateMessage has an init) 2017-12-27 11:41:19 -05:00
Taha Afzal d40a9a9a68 SPARK-311 2017-12-27 11:08:40 -05:00
Taha Afzal b37d1822cf Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-26 19:01:26 -05:00
Taha Afzal cdae8e1fb3 N legged changes broke the hedge price test 2017-12-26 19:01:21 -05:00
Jake Norbut 48556e958e OrderBook - checkin in before family visit 2017-12-26 15:43:01 -06:00
Taha Afzal e22f8d6c28 n legged if 2017-12-26 16:36:57 -05:00
Taha Afzal 850c38601a merging 2017-12-26 15:17:38 -05:00
Pedro Pinto b76bec20ad Added .clang-format, applied it to a couple of files. 2017-12-24 13:00:05 -05:00
Pedro Pinto a68ff5342c Pretified logging subsystems. 2017-12-22 17:44:09 -05:00
Pedro Pinto 8ca60dd822 Backend is code complete except for spreader integration. 2017-12-22 15:56:05 -05:00
Eric Harding 919ab75fe5 Adjust margins on constrols in BTSMessageBox so it looks less like they were randomly generated. (thanks Michael) 2017-12-22 12:37:00 -05:00
Eric Harding 4c4c3b4394 Make btsmessagebox show up when called. 2017-12-22 12:14:49 -05:00
Pedro Pinto 8c925b46e1 Service integration, first cut. 2017-12-22 12:11:22 -05:00
Eric Harding 4b2be30348 Add a diagnostic button to Orders window 2017-12-22 11:48:22 -05:00
Jake Norbut 53748ceb0f OrderBook - lost updates sample 2017-12-22 10:20:34 -06:00
Taha Afzal 78b6036708 merging 2017-12-21 17:59:58 -05:00
Taha Afzal 9ecd076b92 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-21 17:38:55 -05:00
Taha Afzal 4668fa126d SPARK-309 (n legged hedge) 2017-12-21 17:38:52 -05:00
Pedro Pinto dac73c4cdb Fixed gcc build 2017-12-21 22:15:20 +00:00
Pedro Pinto 747c4d2dda Fixed clang compilation. 2017-12-21 16:58:19 -05:00
Pedro Pinto 6fc59d37ff Merge 2017-12-21 16:37:29 -05:00
Pedro Pinto 3cff22eba1 Limit order is code complete. 2017-12-21 16:36:36 -05:00
Eric Harding 796bd30972 Clean up md2 namespace 2017-12-21 16:33:28 -05:00
Eric Harding bff5e1e3c6 Dont' crash service base when null supplied as qualifier 2017-12-21 15:43:25 -05:00
Eric Harding e085cf83e4 delete more unused methods 2017-12-21 15:02:34 -05:00
Eric Harding a89fa7fc33 Add killsparkd because sparkd doesn't seem to listen to SIGHUP from windows. Remove some unused docker commands 2017-12-21 15:02:34 -05:00
Jake Norbut c4c9101353 Order Book - Fake Order Service woes 2017-12-21 14:02:14 -06:00
Eric Harding 1016f6e320 Delete some unused methods 2017-12-21 14:34:49 -05:00
Taha Afzal c7018ce54c Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-21 13:44:27 -05:00
Taha Afzal 48c75f5345 SPARK-309 (changed names of variables) 2017-12-21 13:44:23 -05:00
Eric Harding 8b7d24aa40 Change terribly named folder "structure" and "structure.h" 2017-12-21 10:11:30 -05:00
Eric Harding 630a781c02 Get rid of warning about "taskName" being called "label" now in tasks.json 2017-12-21 10:11:30 -05:00
Taha Afzal c9991818ac Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-21 09:58:26 -05:00
Taha Afzal e9adf17b2c SPARK-309 2017-12-21 09:58:20 -05:00
John Colvin 6b51cf2bb4 SPARK-324 TimeAndSales - implement extended selection for SparkCommands 2017-12-20 22:19:46 -05:00
John Colvin df76553ead SPARK-308 MarketView - implement extended selection for SparkCommands 2017-12-20 22:17:21 -05:00
John Colvin 1c9c632533 factor out common GridVM behavior into Security[MD]Grid/Row base classes 2017-12-20 22:12:29 -05:00
John Colvin 4389984542 fix ListBoxEx 2017-12-20 20:21:09 -05:00
John Colvin 6acfdc68bb create SparkCommandParamObserver 2017-12-20 20:21:09 -05:00
John Colvin c509a2ab83 move Fills files to Modules/Trading/Fills/ 2017-12-20 20:21:09 -05:00
John Colvin 3b0c45e2d7 unify all numeric grid column filters into a generic class 2017-12-20 20:21:09 -05:00
Jake Norbut 482199f4b2 Order Book - taking my first step into a larger world 2017-12-20 16:06:06 -06:00
Jake Norbut 065481e6bf Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-20 16:04:33 -06:00
Jake Norbut a0fcf326d3 Order Book - taking my first step into a larger world 2017-12-20 16:04:26 -06:00
Eric Harding 8bb9b32811 Add /d to vscode.cmd 2017-12-20 14:56:38 -05:00
Eric Harding 42b318e83a Add [ImportingConstructor] to OrdersModel 2017-12-20 10:36:32 -05:00
Taha Afzal bf85b6c596 merging 2017-12-19 21:56:32 -05:00
Taha Afzal e457a4b3a6 SPARK-310 (order interaction behind switch) 2017-12-19 20:28:12 -05:00
Pedro Pinto b1b0e128ec More limit order work. 2017-12-19 18:44:54 -05:00
Pedro Pinto cc23cf0d4c initial native order support 2017-12-19 23:21:44 +00:00
Pedro Pinto c1aa9a2068 Updated service 2017-12-19 23:21:44 +00:00
Pedro Pinto ae03b515a0 Added async factory. 2017-12-19 23:21:44 +00:00
Pedro Pinto 0440c8fb6f Added fill recording. 2017-12-19 23:21:44 +00:00
Eric Harding c2984972a6 New OrdersModel for Orders UI to work against 2017-12-19 17:36:47 -05:00
Taha Afzal 355b29458b tests:moving order update to common 2017-12-19 16:20:20 -05:00
Eric Harding 652ef37147 Specify maximum icon width in SparkWindow base style. (Fixes Fills icon on Picker) 2017-12-19 12:46:06 -05:00
Pedro Pinto ce2208218b Cleaned up merge. 2017-12-19 11:43:59 -05:00
Pedro Pinto deb8f8e440 Orderman2 2017-12-19 11:30:00 -05:00
Pedro Pinto dba051e374 Orderman2 2017-12-19 11:30:00 -05:00
Pedro Pinto fea0ec2279 Orderman2 2017-12-19 11:30:00 -05:00
Pedro Pinto abef2b94f1 Orderman2 2017-12-19 11:30:00 -05:00
Pedro Pinto 20c4cb912d Orderman2 2017-12-19 11:26:02 -05:00
Pedro Pinto 1f9ccafa16 More orderman2 2017-12-19 11:26:02 -05:00
Pedro Pinto 645b80caf5 Added support for batching of events.
This allows natural synopsis policies like cache all or cache N to be
overlayed on top of the event without affecting the event members.
2017-12-19 11:26:02 -05:00
Pedro Pinto a2442baf6c Orderman2 2017-12-19 11:26:02 -05:00
Pedro Pinto f0458d9f7e Replicating externals is not so bad. 2017-12-19 11:26:02 -05:00
Pedro Pinto fd2a422468 Orderman2 2017-12-19 11:26:02 -05:00
Pedro Pinto 199a7a2da3 Made generated API C++ a bit more readeable. 2017-12-19 11:25:48 -05:00
Pedro Pinto 4afe973eb2 Added FIX gw. 2017-12-19 11:25:48 -05:00
Pedro Pinto 38b5ebecc4 Added FIX gw. 2017-12-19 11:25:48 -05:00
Pedro Pinto dbc7ba5598 Refactor. 2017-12-19 11:25:48 -05:00
Pedro Pinto ed2f42f91a refacor 2017-12-19 11:25:48 -05:00
Pedro Pinto b04ec71146 Refactor 2017-12-19 11:25:48 -05:00
Pedro Pinto bd5bb0716b Refactor 2017-12-19 11:25:48 -05:00
Pedro Pinto 533132b4c1 Merged 2017-12-19 11:25:48 -05:00
Pedro Pinto 753134cbc5 Upgraded docker container 2017-12-19 11:23:28 -05:00
Pedro Pinto 8ccd3ee96d Refactor. 2017-12-19 11:22:58 -05:00
Pedro Pinto 6b87c2ea78 Refactor. 2017-12-19 11:22:58 -05:00
Pedro Pinto 6316c28f57 Refactor. 2017-12-19 11:22:58 -05:00
Pedro Pinto 718c4620b0 Event broker is code complete. 2017-12-19 11:22:58 -05:00
Pedro Pinto 2010f59029 Refactor. 2017-12-19 11:22:26 -05:00
Pedro Pinto f4f9baa7b4 Revamping order management. 2017-12-19 11:22:26 -05:00
Eric Harding d15d8a3db7 comment out ShowP&L menu 2017-12-19 10:40:17 -05:00
Jake Norbut 20ec9094b4 Contract Picker - removing static/fake CBOE exchange; using distinct list of exchanges actually present in MD 2017-12-19 09:13:07 -06:00
Taha Afzal 5b6e76f9ae Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-18 22:21:50 -05:00
Taha Afzal 7334f10c7b SPART-310/311 2017-12-18 22:21:46 -05:00
Eric Harding 705e61f2cf Add bold left border on FloatingWindow (goes away when maximized) 2017-12-18 16:28:30 -05:00
Michael Harding 3c3c94b4c3 Unset FocusVisualStyle for SparkMenuButton 2017-12-18 16:18:43 -05:00
Taha Afzal 8086059272 SPART-310/311 2017-12-18 16:09:14 -05:00
Jake Norbut 4b8f3418f0 ContractPicker - Security type check should actually check security types 2017-12-18 13:27:53 -06:00
Jake Norbut c3abd88794 ContractPicker - fixing null ref when SecurityCriteria doesn't actually contain any SecurityKeys 2017-12-18 13:19:30 -06:00
Eric Harding 9f6c1e7435 add menu collapse button. WPF is hard without snoop 2017-12-18 12:50:37 -05:00
Eric Harding 079d6f125f SparkCommand needs a CanExecuteChanged event handler 2017-12-18 11:50:03 -05:00
Eric Harding 71413f6543 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-18 10:52:33 -05:00
Eric Harding 4d1f500559 Clean up markup in style 2017-12-18 10:52:10 -05:00
Pedro Pinto 1b670b8852 Made unit tests self-aware 2017-12-18 10:49:39 -05:00
Eric Harding 18abe69558 Fix context menu style on SparkWindow 2017-12-18 10:48:20 -05:00
Pedro Pinto f73085d9c0 Made unit tests self-aware 2017-12-18 15:36:51 +00:00
Eric Harding d3792fa2c8 Merge branch 'TempBranch' of bitbucket.org:bluetradesys/spark 2017-12-18 09:10:19 -05:00
Taha Afzal 3693453e21 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-18 07:18:46 -05:00
Taha Afzal 9659a0c9e4 SPARK-251 2017-12-18 07:18:42 -05:00
Eric Harding 9fa64e6e1f convert SparkWindowView to UserControl and use Xaml instead of code. Also add style to contextmenu 2017-12-16 20:27:27 -05:00
John Colvin 01bef02822 SPARK-307 / SPARK-300 Market View - implement SparkCommand menu 2017-12-15 19:50:55 -05:00
Taha Afzal 8df6ccbae5 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-15 19:16:12 -05:00
Taha Afzal 4584da8459 SPARK-251 2017-12-15 19:16:09 -05:00
Jake Norbut d2b43c794b SecurityPicker can now update a previous SecurityCriteria selection 2017-12-15 16:28:22 -06:00
Jake Norbut 94785a3a80 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-15 16:19:31 -06:00
Eric Harding 42854afd2b Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-15 17:07:14 -05:00
Eric Harding c6b5d2d11d Add remaining commands to TimeAndSales. 2017-12-15 17:07:11 -05:00
Jake Norbut 326411f942 Contract Picker - minor refactoring; actually reflect passed in criteria clauses 2017-12-15 15:56:06 -06:00
Michael Harding e513f73881 Launcher menu item disabled style 2017-12-15 14:35:45 -05:00
John Colvin 039314e7c3 ObservableDistictCollection unit test 2017-12-15 13:32:24 -05:00
Taha Afzal e763c65694 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-15 12:49:04 -05:00
Taha Afzal 0e4490d991 SPARK-287 done 2017-12-15 12:49:00 -05:00
Eric Harding 7151a196fc remove some unused icons 2017-12-15 12:06:45 -05:00
John Colvin 849ddba4de SPARK-211 / SPARK-257: build filterable grid 2017-12-14 21:20:56 -05:00
Eric Harding 4fd3dd38ea Add TimeAndSales update command as a sample for jake 2017-12-14 17:31:01 -05:00
Eric Harding 50bd7aff0e Add the idea of a PartialCommand to SparkCommands. This is a SparkCommand without a payload. It cannot be posted to the bus until a payload is provided by calling .complete() on it 2017-12-14 16:53:24 -05:00
Jake Norbut 4e86357645 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-14 14:10:30 -06:00
Jake Norbut 48bcab1818 Spark-289 - edit/multi behavior change 2017-12-14 14:10:19 -06:00
Eric Harding 23e297ed4d Remove while(true); in ExchangeSim.cpp (pull this to cool your room down a little) 2017-12-14 14:02:49 -05:00
Taha Afzal 9fb23d9e36 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-14 12:45:55 -05:00
Taha Afzal 838f4cacb2 SPARK-287 spreader_WORKING.on_book remains 2017-12-14 12:45:51 -05:00
Jake Norbut 8502d2a6aa Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-14 11:05:18 -06:00
Jake Norbut 5622efbb93 Picker - setting Margin to a binding so it can vary based on single or multi modes 2017-12-14 11:05:05 -06:00
Taha Afzal bc1a364808 SPARK-287 spreader_WORKING test tamed (was getting too big) 2017-12-14 11:23:51 -05:00
Taha Afzal 96c3233bb1 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-13 23:22:24 -05:00
Taha Afzal a5b2f0519c SPARK-287 spreader_WORKING test does more now 2017-12-13 23:22:21 -05:00
Eric Harding 1d70aa55a6 Change TimeAndSales to SparkWindow pattern 2017-12-13 17:23:21 -05:00
Eric Harding 2397bde141 Add SparkWindow base type 2017-12-13 17:23:21 -05:00
Taha Afzal f4360d7abe Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-12 18:34:05 -05:00
Taha Afzal 89f3f86c92 SPARK-287 spreader_WAITING_FOR_CANCEL_ACK done 2017-12-12 18:33:52 -05:00
Jake Norbut 4a39ce13e6 SecurityPicker - necessary messaging changes to pipe the icon and launched-from-menu item over to the picker window 2017-12-12 14:34:05 -06:00
Jake Norbut d1c7a7e228 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-12 12:45:57 -06:00
Jake Norbut 90cd63d726 removing unnecessary command binding 2017-12-12 12:24:55 -06:00
Jake Norbut 4257772130 Security Picker - reorg 2017-12-12 12:14:56 -06:00
Jake Norbut 3f5447d7d9 Contract Picker - messing around 2017-12-12 10:14:41 -06:00
Taha Afzal 9ad8a11ac7 SPARK-287 spreader_WAITING_FOR_CANCEL_ACK base 2017-12-12 11:08:49 -05:00
Jake Norbut 1f5537e8ee ContractPicker - BTS Window Style 2017-12-12 09:23:36 -06:00
Jake Norbut f75ee3324b SecurityPicker - Window is shown at mouse location 2017-12-12 08:39:19 -06:00
Taha Afzal 80884e7b27 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-11 17:59:54 -05:00
Taha Afzal c4827fe9cf SPARK-287 working state done 2017-12-11 17:59:50 -05:00
Eric Harding 7e8fb900a8 Add time to buildsparkd 2017-12-11 15:36:39 -05:00
Kevin Darby 50929d1a69 cleaned up public margin api 2017-12-11 13:52:37 -05:00
Jake Norbut a05c0c0f22 ContractPicker - Upper casing Exchange listbox 2017-12-11 12:20:42 -06:00
Michael Harding 396996f707 Add Tooltip to LauncherMenuButton 2017-12-11 12:48:40 -05:00
Eric Harding 17b2ec8ae5 Make spark build commands more resilient to vsbuildcmd switching directory for no reason 2017-12-11 11:47:28 -05:00
Taha Afzal d1f23ba4e2 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-11 11:30:02 -05:00
Taha Afzal da5bca5349 SPARK-287 (going on and on) 2017-12-11 11:29:53 -05:00
Michael Harding ec849ad79c Add Collapsed Style to launcher menu button 2017-12-11 10:59:36 -05:00
Taha Afzal 6faeaed7f2 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-09 18:43:31 -05:00
Taha Afzal 81fda682b3 SPARK-287 2017-12-09 18:43:27 -05:00
Taha Afzal cb7a5c1d54 SPARK-287 2017-12-08 23:14:25 -05:00
Michael Harding 78eda54c05 Merged SPARK-252-clean-up-launcher-menu into master 2017-12-08 17:31:40 -05:00
Michael Harding e6a570db07 Fix launcher menu Item FocusVisualStyle 2017-12-08 17:25:23 -05:00
Michael Harding de898a6228 Bind Icon for Spark menu items 2017-12-08 17:14:52 -05:00
Michael Harding 0141e8e057 Add Animations to Spark launcher menu Items 2017-12-08 16:20:59 -05:00
Michael Harding f5e09ccb4f Static Launcher Menu Item Style 2017-12-08 16:20:59 -05:00
Michael Harding f82951ad48 Update the BTSColorExtension to allow better organiation of BTSColors.cs 2017-12-08 16:20:59 -05:00
Jake Norbut 8614759433 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-08 15:01:46 -06:00
Jake Norbut c4deae2b0f Contract Picker - double click security in single-pick mode 2017-12-08 15:01:39 -06:00
Eric Harding 361431a144 move sparkmenu into it's own folder 2017-12-08 10:54:30 -05:00
Taha Afzal 4a6cc10a39 In SpreaderLegData WORKING on_book done 2017-12-08 00:15:49 -05:00
Taha Afzal e498348b03 merging 2017-12-07 18:25:06 -05:00
Taha Afzal 128c071563 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-07 18:17:56 -05:00
Taha Afzal fd9521b66b In SpreaderLegData WORKING in progress 2017-12-07 18:17:53 -05:00
Kevin Darby 6d56a8f057 added methods to MarginServiceCore api for last_result and last_valid_result 2017-12-07 12:55:17 -05:00
Kevin Darby 8a244d89b2 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-07 12:40:21 -05:00
Kevin Darby a25f518679 move externals pointer 2017-12-07 12:40:00 -05:00
Jake Norbut 9fc0c55e48 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-07 11:33:24 -06:00
Jake Norbut 38f582615e Contract Picker - more GUI organization, keyboard nav, button accelerators 2017-12-07 11:33:13 -06:00
Kevin Darby 2638927ef1 Merge branch 'master' of bitbucket.org:bluetradesys/spark into limits 2017-12-07 11:59:37 -05:00
Taha Afzal e3d9081d76 In SpreaderLegData WORKING in progress 2017-12-06 18:36:53 -05:00
Taha Afzal a4296f1b79 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-06 17:54:35 -05:00
Taha Afzal c191158e0e In SpreaderLegData WAITING_FOR_FIRST_CONNECT 2017-12-06 17:54:32 -05:00
Kevin Darby 6c56959e4c Merge branch 'master' of bitbucket.org:bluetradesys/spark into limits 2017-12-06 17:26:33 -05:00
Kevin Darby cbd2a58b5c successful connection to CME span for futures 2017-12-06 17:23:41 -05:00
Jake Norbut 3da394552b Contract Picker - reorganizing some things, GUI changes 2017-12-06 12:16:30 -06:00
Eric Harding 01a22b00e3 move TimeAndSales folder 2017-12-06 12:27:17 -05:00
Eric Harding 77b76e3b75 Missed one folder in yesterdays cleanup 2017-12-06 11:59:13 -05:00
Taha Afzal b607a53edd Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-06 10:17:18 -05:00
Taha Afzal 07ba7a8f59 In SpreaderLegData quoter is stored as a pointer vs value 2017-12-06 10:17:14 -05:00
Eric Harding 13adbb1d42 Remove ViewLocator service 2017-12-05 20:36:05 -05:00
Jake Norbut 31392df28d Contract Picker Model - OK and Cancel buttons behave as one would expect 2017-12-05 18:43:35 -06:00
Taha Afzal d2b9f6d620 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-05 18:38:56 -05:00
Taha Afzal ef68015e05 SPARK-287 WAITING_FOR_FIRST_CONN 2017-12-05 18:38:54 -05:00
Jake Norbut 81bb056dba Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-05 16:30:12 -06:00
Jake Norbut 6141d2969e Contract Picker - fixing bool logic 2017-12-05 16:29:58 -06:00
Eric Harding 02a0279903 Found a test folder in the wrong place 2017-12-05 17:29:35 -05:00
Eric Harding 682350aef1 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-05 17:24:07 -05:00
Eric Harding 7e84dc628d Clean up spark subfolders 2017-12-05 17:24:00 -05:00
Jake Norbut f05603f6ba Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-05 11:53:19 -06:00
Jake Norbut cac172ff1d Contract Picker Model - adding proper null checks in the func so linq won't NRE 2017-12-05 11:53:03 -06:00
Taha Afzal f478a4621b Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-05 10:13:09 -05:00
Taha Afzal 2a793e63ab SPARK-287 spreader WAITING_FOR_FIRST_CONN tests partially done 2017-12-05 10:13:06 -05:00
Eric Harding 225134d4e4 Remove reference to deleted SecurityConverter 2017-12-05 10:04:12 -05:00
Taha Afzal 8761e7420a SPARK-287 spreader data creation factored out for the other tests 2017-12-04 19:47:52 -05:00
Taha Afzal 336e85bf97 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-04 19:23:42 -05:00
Taha Afzal 3039c51032 SPARK-287 start state tests completed 2017-12-04 19:23:39 -05:00
Eric Harding a573a63a62 Remove SecurityConverter which didn't do what it said it did anyway 2017-12-04 15:50:31 -05:00
Eric Harding fa4274aa9f Delete unused c# algo stuff 2017-12-04 15:05:16 -05:00
Eric Harding c29aef63e0 Update TimeAndSales to SecurityCriteria 2017-12-04 15:05:16 -05:00
Taha Afzal 5c5b96af83 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-04 13:17:29 -05:00
Taha Afzal 448c7fe2a8 SPARK-210 setup 2017-12-04 13:17:17 -05:00
Jake Norbut 115371e039 Contract Picker should pass selection onto next window now 2017-12-04 12:14:32 -06:00
Eric Harding ae40deb941 Add CanExecute to SparkCmd and update ShowMarketViewTag to use SecurityCriteria+extension methods 2017-12-04 12:30:51 -05:00
Eric Harding 0f081d29a8 Change security_in_criteria to not test once first matchis found 2017-12-04 12:30:51 -05:00
Taha Afzal 055ced0590 better comments 2017-12-04 09:48:46 -05:00
Taha Afzal 299d513102 SPARK-286 2017-12-03 10:12:17 -05:00
Taha Afzal 76c9eae2cf Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-01 22:56:37 -05:00
Taha Afzal 724c3549fb SPARK-286, just WORKING state is left 2017-12-01 22:56:34 -05:00
Eric Harding f6996e6b49 add BeholderCollection : ObservableCollection which subscribes to IObservable 2017-12-01 22:39:06 -05:00
Taha Afzal afc4139458 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-01 21:54:30 -05:00
Taha Afzal 2396ee0a64 SPARK-286 2017-12-01 21:54:27 -05:00
Eric Harding cd45576fb0 Add SecurityCriteriaExtensions 2017-12-01 16:34:35 -05:00
Taha Afzal 9e5c0e9c68 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-12-01 15:57:34 -05:00
Taha Afzal 2ca4a3ea75 SPARK-286 start state 2017-12-01 15:57:30 -05:00
Eric Harding c0d1e91a8a Change PickOne to take SecurityMD so downstream doesn't have to do the lookup 2017-12-01 15:28:13 -05:00
Taha Afzal d49e4ce234 factored common test functions out 2017-11-30 19:02:27 -05:00
Kevin Darby 76fed35a76 curl.... 2017-11-30 18:15:13 -05:00
Taha Afzal 01afc3a2f1 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-11-30 18:03:19 -05:00
Taha Afzal 4484056c98 test file name changed 2017-11-30 18:03:14 -05:00
Eric Harding c64abce1b9 Change ShowPickX tags to use SecurityCriteria so jake can integrate his UI 2017-11-30 17:34:00 -05:00
Taha Afzal 8ccf75a7fe Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-11-30 15:49:07 -05:00
Taha Afzal c5678e894e SPARK-285 done 2017-11-30 15:49:03 -05:00
Jake Norbut 58522154b7 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-11-30 09:30:09 -06:00
Jake Norbut 98437807c8 commit before merge because git says my files will be overwritten 2017-11-30 09:28:29 -06:00
Eric Harding a4b282834a merge LauncherReorg branch 2017-11-30 09:53:09 -05:00
Taha Afzal 08b2294145 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-11-29 19:10:56 -05:00
Taha Afzal 8c16ddfbc4 cycle_back 2017-11-29 19:10:54 -05:00
Eric Harding d4b0520dc6 Add stack trace to logged unhandled exceptions (c#) 2017-11-29 17:33:55 -05:00
Eric Harding 4cdad2c60a Add very basic button style to launcher menus. Updated style coming soon. 2017-11-29 17:33:27 -05:00
Jake Norbut fec0eab8ce Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-11-29 15:16:46 -06:00
Jake Norbut 512d907d54 Contract picker - View, Criteria Clause, and auto-generating name clause on select 2017-11-29 15:16:32 -06:00
Taha Afzal bca935e446 enabling a previoulsy disabled test 2017-11-29 16:00:01 -05:00
Taha Afzal 3797e6784e merging 2017-11-29 15:42:26 -05:00
Taha Afzal e3f9b2a078 SPARK-285 mostly done 2017-11-29 15:33:04 -05:00
Taha Afzal 10d7d5a801 SPARK-285 on_book done 2017-11-29 12:15:03 -05:00
Eric Harding d5910673c3 Remove IFavorites 2017-11-29 10:16:11 -05:00
Eric Harding 83a7fb54aa Remove unintentional commit. 2017-11-29 10:12:45 -05:00
Eric Harding 95ee540724 Add IShellDaemon interface 2017-11-29 10:12:44 -05:00
Taha Afzal 2f2bbe60c1 SPARK-285 working state test partally done 2017-11-28 20:53:04 -05:00
Eric Harding 90dac39122 remove non-generic ITag 2017-11-28 15:18:46 -05:00
Eric Harding 51e178c6b5 fix merge issues 2017-11-28 14:14:28 -05:00
Eric Harding d4ee0cfc97 merge from master 2017-11-28 13:21:24 -05:00
Taha Afzal cd681b9ab5 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-11-28 09:45:49 -05:00
Taha Afzal 240e255b8d SPARK-285 end state test 2017-11-28 09:45:45 -05:00
Taha Afzal 590231799d SPARK-285 test re-org 2017-11-27 23:20:06 -05:00
Kevin Darby 0d72bb47d4 clarify porfolio_id / account 2017-11-27 18:08:41 -05:00
Kevin Darby 3f5ba37aca ready to start testing positions / margins 2017-11-27 17:59:07 -05:00
Jake Norbut 23b0b637f9 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-11-27 16:29:10 -06:00
Jake Norbut cdb0b8312d Contract Picker work 2017-11-27 16:28:44 -06:00
Taha Afzal e85e648510 SPARK-285 test re-org 2017-11-27 11:58:45 -05:00
Taha Afzal 967d47858c SPARK-285 End State test 2017-11-24 16:02:26 -05:00
Taha Afzal de1b74cd92 SPARK-285 file name change 2017-11-24 10:18:45 -05:00
Taha Afzal 30db05a722 SPARK-285 state name change 2017-11-24 09:55:24 -05:00
Taha Afzal 9eed4d1275 SPARK-285 (end state can potentially transfer control at the start, this simplifies a lot of things 2017-11-23 23:35:57 -05:00
Taha Afzal d270847b27 SPARK-285 WAITING_FOR_CANCEL_ACK done 2017-11-23 13:51:18 -05:00
Eric Harding df0134d7b4 remove our ObserveOnDispatcher use Rx one 2017-11-22 16:50:44 -05:00
Taha Afzal 2b58c0b425 SPARK-285 WAITING_FOR_FIRST_ACL_CANCELLED done 2017-11-22 16:36:18 -05:00
Eric Harding 800f87fca7 Launcher menu structure looks right 2017-11-22 16:34:22 -05:00
Eric Harding 27b66cac06 OrderTicketHandler 2017-11-22 14:30:26 -05:00
Eric Harding 63d784feaa Enable Show picker tags in SparkTags 2017-11-22 14:15:58 -05:00
Eric Harding b26a2ef784 fills window 2017-11-22 13:37:06 -05:00
Taha Afzal 27418a9cbc SPARK-285 WAITING_FOR_FIRST_ACL_CANCELLED half way done 2017-11-22 12:35:19 -05:00
Eric Harding ec7bd46cbb IShellWindowFactory should take the version number also 2017-11-22 11:01:26 -05:00
Eric Harding 2c4bceca45 Add Time and sales 2017-11-22 10:48:43 -05:00
Eric Harding 79e578c0ac Add ShowWindow bus tag 2017-11-21 21:16:29 -05:00
Taha Afzal fb55a676c1 SPARK-285 WAITING_FOR_FIRST_ACK state test completed 2017-11-21 19:31:48 -05:00
Taha Afzal 9ab1911838 SPARK-285 WAITING_FOR_SIZE state test completed 2017-11-21 17:05:37 -05:00
Eric Harding ba997e67ba Update and simplify IShellModule api and separate concerns. 2017-11-21 15:49:11 -05:00
Kevin Darby 32ddfe1848 rename function 2017-11-21 12:29:17 -05:00
Taha Afzal 0908a56eda SPARK-285 start state test completed 2017-11-20 18:43:04 -05:00
Taha Afzal 7f2138b308 SPARK-285 start 2017-11-20 13:29:48 -05:00
Kevin Darby d6e10e1ffc cleaned up risk limiter ambiguity 2017-11-20 12:42:34 -05:00
Eric Harding 0a6102cc77 Simplify IShellModule menu interaction 2017-11-20 11:55:34 -05:00
Eric Harding 010b22fb9f Deleted unimplemented tests. 2017-11-20 11:53:18 -05:00
Eric Harding 75a5872632 Move IBus to top level folder under spark. 2017-11-20 11:52:59 -05:00
Taha Afzal 7ea0c395a1 fixing tests, asserts were missing 2017-11-20 11:12:04 -05:00
Taha Afzal 26daef09af hedging price/qty test 2017-11-17 19:14:56 -05:00
Kevin Darby 5b677125bb fix test 2017-11-17 18:02:47 -05:00
Kevin Darby bf6dfba165 Merge branch 'master' of bitbucket.org:bluetradesys/spark into limits 2017-11-17 17:53:37 -05:00
Kevin Darby c48beff9da margin / position feedback into limits; needs more work 2017-11-17 17:52:40 -05:00
Taha Afzal c5c5e35670 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-11-17 16:58:37 -05:00
Taha Afzal 27fe42e906 pricing tests with fractional price mults 2017-11-17 16:58:34 -05:00
Jake Norbut 954bb59392 ContractPicker - the start of something grand 2017-11-17 14:19:54 -06:00
Eric Harding 45a58d6735 Remove unused GenericCellStore which was broken by changes in IBus 2017-11-17 13:53:20 -05:00
Jake Norbut 7acbacfbf9 adding a parameterless ToString for Security 2017-11-17 09:35:37 -06:00
Jake Norbut 3c5facf934 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-11-16 16:03:03 -06:00
Jake Norbut 32be7accad From Eric - Bus now uses ReplaySubject 2017-11-16 16:02:32 -06:00
Taha Afzal 387c225851 SpreaderLegData has SpreaderPorpertyData exposed as a cons ref& function now 2017-11-16 10:21:11 -05:00
Taha Afzal 87e1d1bf37 In LegPropertyData, made the public member vars private and exposed them through functions 2017-11-15 22:52:39 -05:00
Taha Afzal 0614333213 In LegPropertyData, made the public member vars private and exposed them through functions 2017-11-15 22:28:44 -05:00
Taha Afzal 4f1585f15f made the public member vars private and exposed them through functions 2017-11-15 22:14:36 -05:00
Taha Afzal 40e9c4a151 SPARK-283 spreader bookkeeper data test 2017-11-15 20:18:27 -05:00
Taha Afzal 0bb0a4ed34 SPARK-283 book traversal test 2017-11-15 12:55:57 -05:00
Taha Afzal 08a62988f0 SPARK-283 more tests 2017-11-15 10:18:09 -05:00
Taha Afzal 4f77edbe93 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-11-14 22:31:49 -05:00
Taha Afzal 812ba5cd0f Spark-283 partially done 2017-11-14 22:31:46 -05:00
Kevin Darby c33473a5f0 Merge branch 'master' of bitbucket.org:bluetradesys/spark into limits 2017-11-14 15:58:44 -05:00
Eric Harding 6eeaf21d9c Support window to submit problems to the server with logs/screenshots/etc 2017-11-14 11:55:31 -05:00
Taha Afzal c04bc9db6a adding test skeletons 2017-11-14 10:04:41 -05:00
Taha Afzal ff363d1398 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-11-13 22:11:58 -05:00
Taha Afzal 3670313d2a added logs to hedger and streamlined the state switching 2017-11-13 22:11:55 -05:00
Kevin Darby a8050617c5 a simple position service, wrong for exchange traded spreads until I can get at the leg fills 2017-11-13 17:29:27 -05:00
Eric Harding 6b770ea137 Add support button option to BTSMessageBox 2017-11-13 16:12:51 -05:00
Eric Harding 6790b6cf34 Add extension methods that help when interacting with protobuf apis 2017-11-13 16:12:51 -05:00
Eric Harding 5f1432057d Logger.nonull should not accept a struct to check for null. 2017-11-13 16:12:51 -05:00
Taha Afzal 712b3dee1c merging 2017-11-13 15:53:59 -05:00
Taha Afzal eb69640394 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-11-13 15:53:41 -05:00
Taha Afzal 1afb53a951 SPARK-278 for 2 legged spreads 2017-11-13 15:53:38 -05:00
Kevin Darby d03574ccc7 Merge branch 'master' of bitbucket.org:bluetradesys/spark into limits 2017-11-13 15:37:57 -05:00
Kevin Darby 20a344a0a5 clean up fwd decl 2017-11-13 15:36:11 -05:00
Kevin Darby 6e77ccf152 fixed limits bug after writing another test 2017-11-13 15:29:23 -05:00
Jake Norbut f3658e5a45 CME audit file creation script 2017-11-13 14:00:59 -06:00
Eric Harding 59d960af31 Delete some unused code 2017-11-13 14:02:59 -05:00
Eric Harding 440c33a267 Rename OrdersModel DemoOrdersModel to make it's temporary nature more obvious 2017-11-13 13:59:16 -05:00
Eric Harding ff8c4abc49 Make ImportedResources.ToSecurity accept the bus so dependencies are clear. 2017-11-13 12:06:11 -05:00
Eric Harding dc06d44f82 Remove ImportedResources.UserName singleton. 2017-11-13 11:40:47 -05:00
Eric Harding 4781fdac1e Re-use the same ~/spark directory when doing windows->linux replication 2017-11-13 11:14:46 -05:00
Eric Harding 94a738129e Make SecuritySource an instance isntead of static singleton 2017-11-13 10:07:16 -05:00
Pedro Pinto 7f7fec6ae2 Fixed build. 2017-11-13 09:36:09 -05:00
Pedro Pinto 501f3ff4f2 Docker linux again 2017-11-13 09:26:16 -05:00
Pedro Pinto fb48b84504 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-11-13 09:25:58 -05:00
Pedro Pinto 377695716d Updated docker 2017-11-13 09:25:48 -05:00
Pedro Pinto 93af8949fa Merged 2017-11-13 09:24:54 -05:00
Pedro Pinto c44282085e Tweaks to order building. 2017-11-13 09:22:11 -05:00
Pedro Pinto ae5a6d2493 Fixed some warnings reported by newer clang. 2017-11-13 09:19:40 -05:00
Taha Afzal 0514b84f42 order generation done in one place only 2017-11-12 22:00:44 -05:00
Taha Afzal 3e025f1805 spark-267 done 2017-11-10 18:30:38 -05:00
Taha Afzal 6b5efceb60 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-11-10 17:50:38 -05:00
Taha Afzal 7bd1302f22 Spark-267 better logging 2017-11-10 17:50:35 -05:00
Eric Harding 36ab9439a2 Convert SecuritySelectorControl to use SecurityImmutable 2017-11-10 17:38:16 -05:00
Eric Harding cd5c329bab IEnumerable.Cast<T> does not run implicit conversion operators 2017-11-10 17:15:27 -05:00
Eric Harding 1eee21118f Enable override port for unison and ssh in buildsparkd.cmd/runsparkd.cmd - SPARKVM_PORT and SPARKVM_UNISON_PORT 2017-11-10 16:14:57 -05:00
Eric Harding 4b4eed91f0 Fix stringly typed oneof in OrderTypeVM 2017-11-10 14:02:20 -05:00
Eric Harding fa19edb6ba Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-11-10 13:18:17 -05:00
Eric Harding a37483f146 Switch shell to use immutable security type 2017-11-10 13:18:13 -05:00
Taha Afzal 5998b599be merging 2017-11-10 12:59:19 -05:00
Taha Afzal 0da87235de Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-11-10 12:47:46 -05:00
Taha Afzal cf80d06e07 Spark-267 2017-11-10 12:47:43 -05:00
Eric Harding eafa6ed68d Make c# api friendlier to immutable types. Rename Result.result to Result.value 2017-11-10 11:18:45 -05:00
Taha Afzal b7b3cbb59d merging 2017-11-10 09:37:35 -05:00
Taha Afzal a1793af2f4 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-11-10 09:37:03 -05:00
Taha Afzal b2a4ae0bc0 Spark-280 pimpl 2017-11-10 09:36:59 -05:00
Kevin Darby 3066c234f6 Merge branch 'master' of bitbucket.org:bluetradesys/spark into limits 2017-11-09 13:24:21 -05:00
Kevin Darby 11c3982fce user, account, risklimits tests pass 2017-11-09 13:23:37 -05:00
Taha Afzal 801819838d Spark-278 2017-11-08 10:42:18 -05:00
Taha Afzal 885b22102f spark-278 partially done 2017-11-08 07:45:26 -05:00
Kevin Darby 423041c472 User/Account service with some (perhaps insufficient) level of authentication to prevent unauthorized account or user modifications 2017-11-07 16:45:56 -05:00
Taha Afzal 85fb331fd9 spark-269 done 2017-11-07 09:36:21 -05:00
Taha Afzal f9a954494d Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-11-06 23:03:41 -05:00
Taha Afzal 78c8da8652 spark-269 almost done 2017-11-06 23:03:37 -05:00
Kevin Darby cd08199dae . 2017-11-06 17:28:02 -05:00
Kevin Darby d7cbeab1d7 Merge branch 'master' of bitbucket.org:bluetradesys/spark into limits 2017-11-06 16:02:04 -05:00
Kevin Darby fb9f6544b4 implement UserServiceServer and AccountServiceServer on top of IStore 2017-11-06 16:01:26 -05:00
Jake Norbut 48301936b2 ignore leg fills on spreads 2017-11-06 14:06:58 -06:00
Taha Afzal 7fdece2991 merging 2017-11-06 11:58:36 -05:00
Taha Afzal 5fb7a4547d merging 2017-11-06 10:46:53 -05:00
Taha Afzal 1cfd724839 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-11-06 10:41:24 -05:00
Taha Afzal 761b1301f8 Spark-269 2017-11-06 10:41:12 -05:00
Pedro Pinto c324eec7c1 Refactored main.cpp slightly. 2017-11-06 09:05:38 -05:00
Pedro Pinto f787a9018e Added utility to read PB's from string. 2017-11-06 09:05:07 -05:00
Pedro Pinto 7de639eb66 Build tweaks. 2017-11-06 09:04:54 -05:00
Kevin Darby 7ab3258383 . 2017-11-03 15:18:02 -04:00
Pedro Pinto 3d96274508 Merged 2017-11-03 18:47:03 +00:00
Pedro Pinto 8f7ad5b947 Added Google Benchmark support in sparkd. 2017-11-03 18:21:41 +00:00
Pedro Pinto 037b5ab19a Working around bogus warning. 2017-11-03 18:18:32 +00:00
Taha Afzal 8f3a6b0fa0 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-11-03 14:00:35 -04:00
Taha Afzal 2596c4a2b8 WaitingForSize state 2017-11-03 14:00:30 -04:00
Eric Harding 626bc903d6 Merge branch 'master' into HEAD 2017-11-03 13:45:30 -04:00
Eric Harding 4422292ff5 Make c# protobuf and immutable protobuf implement common IImmutableMessage interface 2017-11-03 13:45:17 -04:00
Taha Afzal ae99bb3f03 QuoterStartStateWorker 2017-11-03 11:36:18 -04:00
Taha Afzal 4f850c85a7 merge 2017-11-02 23:47:36 -04:00
Taha Afzal dccb675d18 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-11-02 23:47:02 -04:00
Taha Afzal a12d9471ef Quoter states 2017-11-02 23:46:21 -04:00
Pedro Pinto 6829f3e384 Basics of exchange simulator work. 2017-11-02 14:44:09 +00:00
Kevin Darby 69bd47322e limits backend builds 2017-11-01 18:03:23 -04:00
Pedro Pinto cfe51b38df Fixed clang build 2017-11-01 21:03:55 +00:00
Pedro Pinto fbeeefe7cf Merged 2017-11-01 21:03:39 +00:00
Pedro Pinto 82964b713c Improved exchange simulator. 2017-11-01 20:57:53 +00:00
Pedro Pinto a60b3838b9 Specified full domain name of mdreplay site so we can work from home. 2017-11-01 17:06:58 +00:00
Pedro Pinto b9795a0fd7 Cleaned up order manager command line driver. 2017-11-01 17:06:35 +00:00
Pedro Pinto d6a83c1c7f Added sleep utility to bts_chrono. 2017-11-01 17:06:10 +00:00
Pedro Pinto 595570a518 Fixed a bug in Sqlite result code check. 2017-11-01 17:05:54 +00:00
Pedro Pinto e35a152f25 Made MD replay a bit more robust when no file is present. 2017-11-01 17:05:29 +00:00
Pedro Pinto 5dc43562e5 Cleaned up assert logging. 2017-11-01 17:05:05 +00:00
Taha Afzal 54c6160795 SPARK-268, hedger state handlers 2017-11-01 10:18:44 -04:00
Taha Afzal 394852a492 hedger states 2017-11-01 07:39:27 -04:00
Taha Afzal e02d22eead Spark-268, 2 more state handlers for Hedger 2017-10-31 23:35:55 -04:00
Taha Afzal 1c66f1c6f3 Spark-268 more work 2017-10-31 17:35:23 -04:00
Taha Afzal 8d579c2f0b IHedgerStateWorker get a build_once 2017-10-31 15:47:51 -04:00
Kevin Darby 3258021c42 user/account model backend boilerplate 2017-10-31 13:35:20 -04:00
Taha Afzal 9792f7d0a1 moving state and price/qty inner classes out from SingleFillHedger 2017-10-31 13:10:50 -04:00
Pedro Pinto d4f49279e1 Updated docker for linux 2017-10-31 16:47:02 +00:00
Pedro Pinto b1b4a8b5ea Fixed clang build. 2017-10-31 16:45:27 +00:00
Pedro Pinto b20207cdd0 Merged 2017-10-31 12:30:52 -04:00
Pedro Pinto 6aaf85bb1c Merge remote-tracking branch 'refs/remotes/origin/master' 2017-10-31 12:29:45 -04:00
Pedro Pinto fc21f1224e Tweaked linux main/win vm build setup. 2017-10-31 16:28:25 +00:00
Taha Afzal 682aaac9bc Spark-268 work 2017-10-31 11:11:47 -04:00
Taha Afzal 931577038b hedger state worker scaffolding complete 2017-10-30 21:50:16 -04:00
Taha Afzal 788c767a5f changing the namespace from bts::spreader to bts::orderman 2017-10-30 19:57:02 -04:00
Taha Afzal dd0238b4b5 deleting SpreaderBase and some test users 2017-10-30 19:47:01 -04:00
Taha Afzal ea118e41e6 merging 2017-10-30 19:41:45 -04:00
Taha Afzal 734c7f07e3 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-10-30 19:34:07 -04:00
Taha Afzal 580f8c3b98 Removing ordertemplate usage 2017-10-30 19:34:02 -04:00
Taha Afzal 966897bfc6 Getting rid of SpreaderBase 2017-10-30 19:09:15 -04:00
Taha Afzal 6274015cb3 IHedgeStateWorker sheds some headers 2017-10-30 18:51:34 -04:00
Taha Afzal 281cd705f0 SpreaderUtils 2017-10-30 18:33:56 -04:00
Taha Afzal 21356c17f7 SpreaderHedgerData headers 2017-10-30 17:45:24 -04:00
Pedro Pinto ab21552386 Updated git ignore to ignore CLion stuff 2017-10-30 21:34:01 +00:00
Pedro Pinto 5a38269d16 ExchangeSim was interfering with the orderman test driver. 2017-10-30 21:31:34 +00:00
Taha Afzal a3a5748ed9 LegPropertyData headers fixed 2017-10-30 17:11:07 -04:00
Pedro Pinto 0a2ed5f7e0 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-10-30 17:03:31 -04:00
Pedro Pinto b5a054632e Fixed cmd line driver for order manager. 2017-10-30 21:02:40 +00:00
Taha Afzal b98a2750f4 more hedger work 2017-10-30 14:55:06 -04:00
Taha Afzal b7e2e1536f Cleaning up hedger headers 2017-10-30 14:04:08 -04:00
Taha Afzal b7bf9ba2d4 SPARK-268 (not complete) 2017-10-30 12:10:12 -04:00
Taha Afzal 9b9616c4bf merge 2017-10-30 10:13:47 -04:00
Taha Afzal 51ec0dbb07 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-10-30 10:13:04 -04:00
Taha Afzal 6e82155d86 Spark-249-Spreader Order : Create state handlers 2017-10-30 10:12:55 -04:00
Pedro Pinto 73282f5e7b Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-10-30 13:32:25 +00:00
Pedro Pinto 493586a0ca More work on exchange simulator. 2017-10-30 13:32:11 +00:00
Kevin Darby 4740eb5879 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-10-27 15:25:34 -04:00
Eric Harding 7637c872b6 Externals pointer got moved backwards somehow. Updated it to head so unison.exe is available 2017-10-27 09:53:38 -04:00
Eric Harding 8be0c3e03e code cleanup in diff 2017-10-26 17:55:10 -04:00
Kevin Darby 2dc57b6809 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-10-26 10:08:44 -04:00
Taha Afzal ffeb86dd8c Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-10-25 17:43:26 -04:00
Eric Harding cc9fcb4b59 Improved sync_with 2017-10-25 17:38:48 -04:00
Eric Harding e2cd9820af Fix buildprops 2017-10-25 17:38:47 -04:00
Kevin Darby f421296812 remove unneeded tools 2017-10-25 16:32:07 -04:00
Taha Afzal 9aca77729c Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-10-25 15:38:46 -04:00
Taha Afzal 2521352737 Case 248 SpreaderOrder : move state into the pimpl structure 2017-10-25 15:38:43 -04:00
Taha Afzal 149d68b805 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-10-24 10:10:25 -04:00
Taha Afzal 4884981837 Merge branch 'master' of bitbucket.org:bluetradesys/spark 2017-10-23 11:40:34 -04:00
Taha Afzal 0d11726104 merging 2017-10-21 09:08:48 -04:00
2150 changed files with 139107 additions and 47555 deletions

No files matched your search

+1
View File
@@ -0,0 +1 @@
IndentWidth: 3
+16
View File
@@ -1,4 +1,7 @@
nohup.out
build/
cmake-build-debug/
.idea/
.dir-locals.el
*.pyc
.vscode/*
@@ -6,7 +9,20 @@ build/
.vs
obj/
*.csproj.user
*.vspx
*.psess
msbuild.log
*.orig
vcxproj.user
src/client/spark/Properties/launchSettings.json
compile_commands.json
.cquery_cached_index/
src/client/sparkcmd/Properties/launchSettings.json
node_modules
paket-files
project.lock.json
src/server/sparkd/orderman/perf_analysis/data
src/server/sparkd/orderman/perf_analysis/logs/
src/server/sparkd/orderman/perf_analysis/trace_data/
src/lib/orderman/perf_analysis/logs/latency_data/
trace_data/
+101 -65
View File
@@ -1,66 +1,102 @@
{
"configurations": [
{
"name": "Linux",
"includePath": [
"/usr/include",
"/usr/local/include",
"${workspaceRoot}"
],
"defines": [],
"intelliSenseMode": "clang-x64",
"browse": {
"path": [
"/usr/include",
"/usr/local/include",
"${workspaceRoot}"
],
"limitSymbolsToIncludedHeaders": true,
"databaseFilename": ""
}
},
{
"name": "Windows",
"intelliSenseMode": "clang-x64",
"includePath": [
"${workspaceRoot}/src",
"${workspaceRoot}/build/src",
"${workspaceRoot}/build/gcc_debug/src",
"${workspaceRoot}/externals/windows/include",
"${workspaceRoot}/externals/linux/include",
"${workspaceRoot}/externals/windows/vscode/usr/include/c++/6",
"${workspaceRoot}/externals/windows/vscode/usr/include/x86_64-linux-gnu/c++/6",
"${workspaceRoot}/externals/windows/vscode/usr/include/c++/6/backward",
"${workspaceRoot}/externals/windows/vscode/usr/lib/gcc/x86_64-linux-gnu/6/include",
"${workspaceRoot}/externals/windows/vscode/usr/local/include",
"${workspaceRoot}/externals/windows/vscode/usr/lib/gcc/x86_64-linux-gnu/6/include-fixed",
"${workspaceRoot}/externals/windows/vscode/usr/include/x86_64-linux-gnu",
"${workspaceRoot}/externals/windows/vscode/usr/include"
],
"defines": [
"__linux__",
"__x86_64__"
],
"browse": {
"path": [
"${workspaceRoot}/src",
"${workspaceRoot}/build/src",
"${workspaceRoot}/build/gcc_debug/src",
"${workspaceRoot}/externals/windows/include",
"${workspaceRoot}/externals/linux/include",
"${workspaceRoot}/externals/windows/vscode/usr/include/c++/6",
"${workspaceRoot}/externals/windows/vscode/usr/include/x86_64-linux-gnu/c++/6",
"${workspaceRoot}/externals/windows/vscode/usr/include/c++/6/backward",
"${workspaceRoot}/externals/windows/vscode/usr/lib/gcc/x86_64-linux-gnu/6/include",
"${workspaceRoot}/externals/windows/vscode/usr/local/include",
"${workspaceRoot}/externals/windows/vscode/usr/lib/gcc/x86_64-linux-gnu/6/include-fixed",
"${workspaceRoot}/externals/windows/vscode/usr/include/x86_64-linux-gnu",
"${workspaceRoot}/externals/windows/vscode/usr/include/*"
],
"limitSymbolsToIncludedHeaders": true,
"databaseFilename": ""
}
}
],
"version": 3
{
"configurations": [
{
"name": "Linux",
"includePath": [
"/usr/include",
"/usr/local/include",
"${workspaceRoot}"
],
"defines": [],
"intelliSenseMode": "clang-x64",
"browse": {
"path": [
"/usr/include",
"/usr/local/include",
"${workspaceRoot}"
],
"limitSymbolsToIncludedHeaders": true,
"databaseFilename": ""
},
"cStandard": "c11",
"cppStandard": "c++17"
},
{
"name": "Windows",
"intelliSenseMode": "clang-x64",
"includePath": [
"${workspaceRoot}/src",
"${workspaceRoot}/build/src",
"${workspaceRoot}/build/ninja_debug/src",
"${workspaceRoot}/externals/windows/include",
"${workspaceRoot}/externals/linux/include",
"${workspaceRoot}/externals/windows/vscode/usr/include/c++/6",
"${workspaceRoot}/externals/windows/vscode/usr/include/x86_64-linux-gnu/c++/6",
"${workspaceRoot}/externals/windows/vscode/usr/include/c++/6/backward",
"${workspaceRoot}/externals/windows/vscode/usr/lib/gcc/x86_64-linux-gnu/6/include",
"${workspaceRoot}/externals/windows/vscode/usr/local/include",
"${workspaceRoot}/externals/windows/vscode/usr/lib/gcc/x86_64-linux-gnu/6/include-fixed",
"${workspaceRoot}/externals/windows/vscode/usr/include/x86_64-linux-gnu",
"${workspaceRoot}/externals/windows/vscode/usr/include"
],
"defines": [
"__linux__",
"__x86_64__"
],
"browse": {
"path": [
"${workspaceRoot}/src",
"${workspaceRoot}/build/src",
"${workspaceRoot}/build/ninja_debug/src",
"${workspaceRoot}/externals/windows/include",
"${workspaceRoot}/externals/linux/include",
"${workspaceRoot}/externals/windows/vscode/usr/include/c++/6",
"${workspaceRoot}/externals/windows/vscode/usr/include/x86_64-linux-gnu/c++/6",
"${workspaceRoot}/externals/windows/vscode/usr/include/c++/6/backward",
"${workspaceRoot}/externals/windows/vscode/usr/lib/gcc/x86_64-linux-gnu/6/include",
"${workspaceRoot}/externals/windows/vscode/usr/local/include",
"${workspaceRoot}/externals/windows/vscode/usr/lib/gcc/x86_64-linux-gnu/6/include-fixed",
"${workspaceRoot}/externals/windows/vscode/usr/include/x86_64-linux-gnu",
"${workspaceRoot}/externals/windows/vscode/usr/include/*"
],
"limitSymbolsToIncludedHeaders": true,
"databaseFilename": ""
},
"cStandard": "c11",
"cppStandard": "c++17"
},
{
"name": "WindowsQuick",
"intelliSenseMode": "clang-x64",
"includePath": [
"${workspaceRoot}/src",
"${workspaceRoot}/build/src",
"${workspaceRoot}/build/ninja_debug/src",
"${workspaceRoot}/externals/windows/include",
"${workspaceRoot}/externals/linux/include",
"${workspaceRoot}/externals/windows/vscode/usr/include/c++/6",
"${workspaceRoot}/externals/windows/vscode/usr/include/x86_64-linux-gnu/c++/6",
"${workspaceRoot}/externals/windows/vscode/usr/include/c++/6/backward",
"${workspaceRoot}/externals/windows/vscode/usr/lib/gcc/x86_64-linux-gnu/6/include",
"${workspaceRoot}/externals/windows/vscode/usr/local/include",
"${workspaceRoot}/externals/windows/vscode/usr/lib/gcc/x86_64-linux-gnu/6/include-fixed",
"${workspaceRoot}/externals/windows/vscode/usr/include/x86_64-linux-gnu",
"${workspaceRoot}/externals/windows/vscode/usr/include"
],
"defines": [
"__linux__",
"__x86_64__"
],
"browse": {
"path": [
"${workspaceRoot}/src"
],
"limitSymbolsToIncludedHeaders": true,
"databaseFilename": "${workspaceRoot}/.vscode/browse.vc.db"
},
"cStandard": "c11",
"cppStandard": "c++17"
}
],
"version": 4
}
+325 -163
View File
@@ -1,164 +1,326 @@
{
"version": "0.2.0",
"configurations": [
{
"name": "(gdb) Launch",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceRoot}/build/gcc_debug/src/server/sparkd/sparkd",
"args": ["run"],
"stopAtEntry": false,
"cwd": "${workspaceRoot}/build/gcc_debug/src/server/sparkd",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
]
},
{
"name": "Client Launch",
"type": "clr",
"request": "launch",
"program": "${workspaceRoot}/build/Debug/bin/net462/spark.exe",
"args": [],
"cwd": "${workspaceRoot}",
"stopAtEntry": false,
"externalConsole": true
},
{
"name": "Client Attach",
"type": "clr",
"request": "attach",
"processId":"${command:pickProcess}"
},
{
"name": "SparkVM Launch",
"type": "cppdbg",
"request": "launch",
"program": "/home/bts/spark/build/ninja_debug/src/server/sparkd/sparkd",
"args": ["configcheck", "System"],
"stopAtEntry": true,
"cwd": "/home/bts/spark/build/ninja_debug/src/server/sparkd/",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"preLaunchTask": "",
"logging": {
"engineLogging": false
},
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "enable pretty-printer",
"ignoreFailures": true
}
],
"pipeTransport": {
"pipeCwd": "${workspaceRoot}",
"pipeProgram": "c:\\program files\\git\\usr\\bin\\ssh.exe",
"pipeArgs": ["bts@sparkvm"],
"debuggerPath": "/usr/bin/gdb"
},
"sourceFileMap": {
"/home/bts/spark/": "${workspaceRoot}"
}
},
{
"name": "Docker Launch",
"type": "cppdbg",
"request": "launch",
"program": "/bts/build/gcc_debug/src/server/sparkd/sparkd",
"args": ["test"],
"stopAtEntry": false,
"cwd": "/bts/build/gcc_debug/src/server/sparkd",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"preLaunchTask": "",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "enable pretty-printer",
"ignoreFailures": true
}
],
"pipeTransport": {
"pipeCwd": "${workspaceRoot}",
"pipeProgram": "c:\\program files\\git\\usr\\bin\\ssh.exe",
"pipeArgs": ["-p 2000","root@localhost"],
"debuggerPath": "/usr/bin/gdb"
},
"sourceFileMap": {
"/bts/": "${workspaceRoot}"
}
},
{
"name": "Docker attach",
"type": "cppdbg",
"request": "attach",
"program": "/bts/build/gcc_debug/src/server/sparkd/sparkd",
"processId": "${command:pickRemoteProcess}",
"MIMode": "gdb",
"pipeTransport": {
"pipeCwd": "${workspaceRoot}",
"pipeProgram": "c:\\program files\\git\\usr\\bin\\ssh.exe",
"pipeArgs": ["-p 2000","root@localhost"],
"debuggerPath": "/usr/bin/gdb"
},
"sourceFileMap": {
"/bts/": "${workspaceRoot}"
}
},
{
"name": "Python",
"type": "python",
"request": "launch",
"stopOnEntry": false,
"pythonPath": "${config:python.pythonPath}",
"program": "${file}",
"cwd": "${workspaceRoot}",
"env": {},
"envFile": "${workspaceRoot}/.env",
"args": [ "DEBUG" ],
"debugOptions": [
"WaitOnAbnormalExit",
"WaitOnNormalExit",
"RedirectOutput"
]
},
{
"name": "edge-asp051",
"type": "cppdbg",
"request": "launch",
"program": "/home/bts/spark/sparkd",
"args": ["run"],
"stopAtEntry": false,
"cwd": "/home/bts/spark/",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"preLaunchTask": "",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "enable pretty-printer",
"ignoreFailures": true
}
],
"pipeTransport": {
"pipeCwd": "${workspaceRoot}",
"pipeProgram": "c:\\program files\\git\\usr\\bin\\ssh.exe",
"pipeArgs": ["bts@edge-asp051"],
"debuggerPath": "/usr/bin/gdb"
},
"sourceFileMap": {
"/bts/": "${workspaceRoot}"
}
}
]
{
"version": "0.2.0",
"configurations": [
{
"name": "(gdb) Launch",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceRoot}/build/ninja_debug/src/server/sparkd/sparkd",
"args": ["run"],
"stopAtEntry": false,
"cwd": "${workspaceRoot}/build/ninja_debug/src/server/sparkd",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
]
},
{
"name": "Client Launch",
"type": "clr",
"request": "launch",
"program": "${workspaceRoot}/build/Debug/bin/net471/spark.exe",
"args": [],
"cwd": "${workspaceRoot}",
"stopAtEntry": false,
"externalConsole": true,
"requireExactSource": false
},
{
"name": "SDK Launch",
"type": "clr",
"request": "launch",
"program": "${workspaceRoot}/build/Debug/bin/net471/spark_sdk.exe",
"args": ["md","GLBX","Future","ZN", "ZNU8"],
"cwd": "${workspaceRoot}",
"stopAtEntry": false,
"externalConsole": true,
"requireExactSource": false
},
{
"name": "Client Tests",
"type": "clr",
"request": "launch",
"program": "${workspaceRoot}/build/Debug/bin/net471/sparkcmd.exe",
"args": ["test","test_filter"],
"cwd": "${workspaceRoot}",
"stopAtEntry": false,
"externalConsole": true,
"requireExactSource": false
},
{
"name": "Client Attach",
"type": "clr",
"request": "attach",
"processId":"${command:pickProcess}"
},
{
"name": "SparkVM Launch",
"type": "cppdbg",
"request": "launch",
"program": "/home/bts/spark/build/ninja_debug/src/server/sparkd/sparkd",
"args": ["run"],
"stopAtEntry": false,
"cwd": "/home/bts/spark/build/ninja_debug/src/server/sparkd/",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"preLaunchTask": "",
"logging": {
"engineLogging": false
},
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "enable pretty-printer",
"ignoreFailures": true
},
{
"description": "Skip STL",
"text": "skip -gfi /usr/include/c++/7/bits/*.h",
"ignoreFailures": true
}
],
"pipeTransport": {
"pipeCwd": "${workspaceRoot}",
"pipeProgram": "c:\\program files\\git\\usr\\bin\\ssh.exe",
"pipeArgs": ["bts@sparkvm"],
"debuggerPath": "/usr/bin/gdb"
},
"sourceFileMap": {
"/home/bts/spark/": "${workspaceRoot}"
}
},
{
"name": "Spreader Tests",
"type": "cppdbg",
"request": "launch",
"program": "/home/bts/spark/build/ninja_debug/src/server/sparkd/sparkd",
"args": ["test", "[spreader]"],
"stopAtEntry": false,
"cwd": "/home/bts/spark/build/ninja_debug/src/server/sparkd/",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"preLaunchTask": "",
"logging": {
"engineLogging": false
},
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "enable pretty-printer",
"ignoreFailures": true
}
],
"pipeTransport": {
"pipeCwd": "${workspaceRoot}",
"pipeProgram": "c:\\program files\\git\\usr\\bin\\ssh.exe",
"pipeArgs": ["bts@sparkvm"],
"debuggerPath": "/usr/bin/gdb"
},
"sourceFileMap": {
"/home/bts/spark/": "${workspaceRoot}"
}
},
{
"name": "Admin Service Tests",
"type": "cppdbg",
"request": "launch",
"program": "/home/bts/spark/build/ninja_debug/src/server/sparkd/sparkd",
"args": ["test", "[admin_service]"],
"stopAtEntry": false,
"cwd": "/home/bts/spark/build/ninja_debug/src/server/sparkd/",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"preLaunchTask": "",
"logging": {
"engineLogging": false
},
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "enable pretty-printer",
"ignoreFailures": true
}
],
"pipeTransport": {
"pipeCwd": "${workspaceRoot}",
"pipeProgram": "c:\\program files\\git\\usr\\bin\\ssh.exe",
"pipeArgs": ["bts@sparkvm"],
"debuggerPath": "/usr/bin/gdb"
},
"sourceFileMap": {
"/home/bts/spark/": "${workspaceRoot}"
}
},
{
"name": "Limiter Tests",
"type": "cppdbg",
"request": "launch",
"program": "/home/bts/spark/build/ninja_debug/src/server/sparkd/sparkd",
"args": ["test", "[limiter]"],
"stopAtEntry": false,
"cwd": "/home/bts/spark/build/ninja_debug/src/server/sparkd/",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"preLaunchTask": "",
"logging": {
"engineLogging": false
},
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "enable pretty-printer",
"ignoreFailures": true
}
],
"pipeTransport": {
"pipeCwd": "${workspaceRoot}",
"pipeProgram": "c:\\program files\\git\\usr\\bin\\ssh.exe",
"pipeArgs": ["bts@sparkvm"],
"debuggerPath": "/usr/bin/gdb"
},
"sourceFileMap": {
"/home/bts/spark/": "${workspaceRoot}"
}
},
{
"name": "MD Tests",
"type": "cppdbg",
"request": "launch",
"program": "/home/bts/spark/build/ninja_debug/src/server/sparkd/sparkd",
"args": ["test", "[md]"],
"stopAtEntry": false,
"cwd": "/home/bts/spark/build/ninja_debug/src/server/sparkd/",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"preLaunchTask": "",
"logging": {
"engineLogging": false
},
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
},
{
"description": "Skip STL",
"text": "skip -gfi /usr/include/c++/7/bits/*.h",
"ignoreFailures": true
}
],
"pipeTransport": {
"pipeCwd": "${workspaceRoot}",
"pipeProgram": "c:\\program files\\git\\usr\\bin\\ssh.exe",
"pipeArgs": ["bts@sparkvm"],
"debuggerPath": "/usr/bin/gdb"
},
"sourceFileMap": {
"/home/bts/spark/": "${workspaceRoot}"
}
},
{
"name": "SparkVM attach",
"type": "cppdbg",
"request": "attach",
"program": "/home/bts/spark/build/ninja_debug/src/server/sparkd/sparkd",
"processId": "${command:pickRemoteProcess}",
"MIMode": "gdb",
"pipeTransport": {
"pipeCwd": "${workspaceRoot}",
"pipeProgram": "c:\\program files\\git\\usr\\bin\\ssh.exe",
"pipeArgs": ["bts@sparkvm"],
"debuggerPath": "/usr/bin/gdb"
},
"sourceFileMap": {
"/home/bts/spark/": "${workspaceRoot}"
}
},
{
"name": "Python",
"type": "python",
"request": "launch",
"stopOnEntry": false,
"pythonPath": "${config:python.pythonPath}",
"program": "${file}",
"cwd": "${workspaceRoot}",
"env": {},
"envFile": "${workspaceRoot}/.env",
"args": [ "DEBUG" ],
"debugOptions": [
"WaitOnAbnormalExit",
"WaitOnNormalExit",
"RedirectOutput"
]
},
{
"name": "edge-asp051",
"type": "cppdbg",
"request": "launch",
"program": "/home/bts/spark/sparkd",
"args": ["run"],
"stopAtEntry": false,
"cwd": "/home/bts/spark/",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"preLaunchTask": "",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "enable pretty-printer",
"ignoreFailures": true
}
],
"pipeTransport": {
"pipeCwd": "${workspaceRoot}",
"pipeProgram": "c:\\program files\\git\\usr\\bin\\ssh.exe",
"pipeArgs": ["bts@edge-asp051"],
"debuggerPath": "/usr/bin/gdb"
},
"sourceFileMap": {
"/bts/": "${workspaceRoot}"
}
},
{
"name": "Docker Launch",
"type": "cppdbg",
"request": "launch",
"program": "/bts/build/gcc_debug/src/server/sparkd/sparkd",
"args": ["test"],
"stopAtEntry": false,
"cwd": "/bts/build/gcc_debug/src/server/sparkd",
"environment": [],
"externalConsole": true,
"MIMode": "gdb",
"preLaunchTask": "",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "enable pretty-printer",
"ignoreFailures": true
}
],
"pipeTransport": {
"pipeCwd": "${workspaceRoot}",
"pipeProgram": "c:\\program files\\git\\usr\\bin\\ssh.exe",
"pipeArgs": ["-p 2000","root@localhost"],
"debuggerPath": "/usr/bin/gdb"
},
"sourceFileMap": {
"/bts/": "${workspaceRoot}"
}
}
]
}
+18 -10
View File
@@ -4,9 +4,9 @@
"version": "2.0.0",
"tasks": [
{
"taskName": "client_build",
"label": "client_build",
"type": "shell",
"command": ".\\tools\\clientbuild.cmd",
"command": ".\\tools\\buildspark.cmd",
"problemMatcher":"$msCompile",
"presentation": {
"echo": true,
@@ -20,22 +20,30 @@
}
},
{
"taskName": "server_build",
"label": "server_build",
"type": "shell",
"command": ".\\tools\\ssh_serverbuild.cmd",
"problemMatcher": {
"base": "$gcc",
"command": ".\\tools\\buildsparkd.cmd",
"problemMatcher": {
"base": "$gcc",
"owner": "cpp",
"fileLocation": [
"relative",
"${workspaceFolder}"
]
"${workspaceFolder}"
],
"pattern": {
"regexp": "(.?)(home)(.?)(bts)(.?)(spark)(.?)(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)",
"file": 8,
"line": 9,
"column": 10,
"severity": 11,
"message": 12
}
},
"presentation": {
"echo": true,
"reveal": "always",
"focus": false,
"panel": "shared"
"panel": "new"
},
"group": {
"kind": "build",
+27 -7
View File
@@ -28,14 +28,34 @@ if (WIN32)
set (CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MTd")
set (CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_DEBUG} /MT")
set(CMAKE_SHARED_LINKER_FLAGS_RELEASE "${CMAKE_SHARED_LINKER_FLAGS_RELEASE} /DEBUG /OPT:REF /OPT:ICF /LTCG")
add_subdirectory(src/lib)
else ()
set (CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} \
-Wall -pedantic -Wextra -Werror -Wno-missing-braces --std=c++14 -fdiagnostics-color")
set (CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_DEBUG} -DNDEBUG -O3")
add_subdirectory(src/lib)
add_subdirectory(src/server/sparkd)
# so that sparkd looks for libspark.so in its directory
set (CMAKE_BUILD_WITH_INSTALL_RPATH TRUE)
set (CMAKE_INSTALL_RPATH ".")
set (CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} \
-fPIC -Wall -pedantic -Wextra -Werror \
-Wno-missing-braces -Wno-ignored-qualifiers \
--std=c++17 -fdiagnostics-color")
set (CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_DEBUG} -fno-omit-frame-pointer -DNDEBUG -O3")
add_subdirectory(src/server/sparkd)
add_subdirectory(src/lib)
add_subdirectory(src/web)
add_subdirectory(src/sdk)
add_subdirectory(src/data_files)
add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/server
COMMAND mkdir -p ${CMAKE_BINARY_DIR}/server
COMMAND ln ARGS -sf ${CMAKE_BINARY_DIR}/src/server/sparkd/sparkd ${CMAKE_BINARY_DIR}/server
COMMAND ln ARGS -sf ${CMAKE_BINARY_DIR}/src/server/sparkd/defaults ${CMAKE_BINARY_DIR}/server
COMMAND ln ARGS -sf ${CMAKE_BINARY_DIR}/web ${CMAKE_BINARY_DIR}/server
COMMAND ln ARGS -sf ${CMAKE_BINARY_DIR}/data_files ${CMAKE_BINARY_DIR}/server
COMMAND ln ARGS -sf ${CMAKE_BINARY_DIR}/src/lib/libspark.so ${CMAKE_BINARY_DIR}/server
COMMENT "Creating server runtime layout"
DEPENDS sparkd data_files_dir)
add_custom_target(server_layout ALL DEPENDS ${CMAKE_BINARY_DIR}/server)
endif()
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 MiB

+27
View File
@@ -0,0 +1,27 @@
* Services
** Admin
** ErrorReport
** MarketDataRelay
** Persistence
** ShellDiagnostic
** SyntheticSecurity
** Order
*** Streams
- Fills
- Orders
*** Ops
- Create/Update/Cancel/Crack orders
*** Internal structure
- Two threads, fast and slow
**** Fast Actors
***** MDSource
***** OrderManager
***** ExecutionGateway
**** Slow Actors
***** ServiceBridge
***** Timer
***** AsyncFactory
***** OrderStore
***** FillStore
***** SecuritySrc
* Benchmarks
+74
View File
@@ -0,0 +1,74 @@
---------------------------------------------------------------------------------
Benchmark Time CPU Iterations
---------------------------------------------------------------------------------
gen_id 343486 ns 335807 ns 2075
mutex_lock_unlock 21 ns 21 ns 32639774
spin_lock_unlock 8 ns 8 ns 89116301
bts_spinlock_lock_unlock 8 ns 8 ns 89147033
serialize_update 44 ns 44 ns 16087792
serialize_order 1490 ns 1490 ns 469370
binary_search_of_guid/8 45 ns 45 ns 19628480
binary_search_of_guid/64 74 ns 74 ns 8488516
binary_search_of_guid/512 152 ns 152 ns 5951672
binary_search_of_guid/4096 176 ns 176 ns 3516706
binary_search_of_guid/8192 204 ns 204 ns 4195026
binary_search_of_int64/8 7 ns 7 ns 125831105
binary_search_of_int64/64 10 ns 10 ns 83445929
binary_search_of_int64/512 17 ns 17 ns 44577843
binary_search_of_int64/4096 21 ns 21 ns 30816423
binary_search_of_int64/8192 23 ns 23 ns 33503850
binary_search_of_int32/8 6 ns 6 ns 105190034
binary_search_of_int32/64 9 ns 9 ns 69381845
binary_search_of_int32/512 17 ns 17 ns 46519573
binary_search_of_int32/4096 21 ns 21 ns 34235987
binary_search_of_int32/8192 23 ns 23 ns 30444656
guid_gen 6302 ns 6139 ns 113547
shared_ptr_cpy 12 ns 12 ns 56257121
alloc_free 27 ns 27 ns 26090707
new_delete 19 ns 19 ns 37533496
boost_pool 1 ns 1 ns 1000000000
boost_object_pool 2 ns 2 ns 355797411
protected_boost_pool 15 ns 15 ns 45520032
boost_singleton_pool 38 ns 38 ns 18434739
atomic_inc 6 ns 6 ns 112527844
mem_copy/8 4 ns 4 ns 164561574 1.73705GB/s
mem_copy/64 4 ns 4 ns 164581813 14.0167GB/s
mem_copy/128 4 ns 4 ns 164619030 28.0289GB/s
mem_copy/512 14 ns 14 ns 50947879 33.8911GB/s
mem_copy/1024 30 ns 30 ns 23514125 31.6838GB/s
mem_copy/8192 336 ns 336 ns 2083753 22.6921GB/s
alloc_and_copy_from_pool 1 ns 1 ns 1000000000
lambda_copy 39 ns 39 ns 18132412
boost_pool_allocator 96 ns 96 ns 7326598
queue_notification 5 ns 5 ns 142589437
queue_notification2 6 ns 6 ns 112575651
boost_lockless_queue 49 ns 49 ns 13287170
moody_camel_queue 29 ns 29 ns 24188660
moody_camel_fat_push 95 ns 95 ns 7354405
boost_lockless_stack 44 ns 44 ns 15788696
moody_camel_slim_push 89 ns 89 ns 7856017
lambda_alloc_copy<NeighbourAddition> 7 ns 7 ns 97263743
lambda_alloc_copy<NeighbourRemoval> 7 ns 7 ns 97123060
lambda_alloc_copy<Advertisement> 7 ns 7 ns 97227678
lambda_alloc_copy<Unadvertisement> 7 ns 7 ns 97224373
lambda_alloc_copy<Subscription> 7 ns 7 ns 97186624
lambda_alloc_copy<Unsubscription> 7 ns 7 ns 97246484
lambda_alloc_copy<InternalSubscription> 7 ns 7 ns 97179666
lambda_alloc_copy<InternalUnsubscription> 7 ns 7 ns 97138264
simple_alloc_copy<NeighbourAddition> 4 ns 4 ns 194500344
simple_alloc_copy<NeighbourRemoval> 3 ns 3 ns 256560908
simple_alloc_copy<Advertisement> 4 ns 4 ns 194403696
simple_alloc_copy<Unadvertisement> 3 ns 3 ns 267468747
simple_alloc_copy<Subscription> 3 ns 3 ns 267340791
simple_alloc_copy<Unsubscription> 3 ns 3 ns 237752654
simple_alloc_copy<InternalSubscription> 4 ns 4 ns 178297581
simple_alloc_copy<InternalUnsubscription> 3 ns 3 ns 267398457
get_thread_id 5 ns 5 ns 152785800
native_order_fix_data_create/8 19 ns 19 ns 37523830
native_order_fix_data_create/64 19 ns 19 ns 36243824
native_order_fix_data_create/512 19 ns 19 ns 36265679
native_order_fix_data_create/4096 67 ns 67 ns 10475112
native_order_fix_data_create/32768 59 ns 59 ns 11880862
native_order_fix_data_create/131072 60 ns 60 ns 11755809
native_order_fix_data_fragment 101 ns 101 ns 6957912
small_vec 1 ns 1 ns 535005301
+301
View File
@@ -0,0 +1,301 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<!-- 2018-10-08 Mon 18:50 -->
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>&lrm;</title>
<meta name="generator" content="Org mode" />
<meta name="author" content="ppinto" />
<style type="text/css">
<!--/*--><![CDATA[/*><!--*/
.title { text-align: center;
margin-bottom: .2em; }
.subtitle { text-align: center;
font-size: medium;
font-weight: bold;
margin-top:0; }
.todo { font-family: monospace; color: red; }
.done { font-family: monospace; color: green; }
.priority { font-family: monospace; color: orange; }
.tag { background-color: #eee; font-family: monospace;
padding: 2px; font-size: 80%; font-weight: normal; }
.timestamp { color: #bebebe; }
.timestamp-kwd { color: #5f9ea0; }
.org-right { margin-left: auto; margin-right: 0px; text-align: right; }
.org-left { margin-left: 0px; margin-right: auto; text-align: left; }
.org-center { margin-left: auto; margin-right: auto; text-align: center; }
.underline { text-decoration: underline; }
#postamble p, #preamble p { font-size: 90%; margin: .2em; }
p.verse { margin-left: 3%; }
pre {
border: 1px solid #ccc;
box-shadow: 3px 3px 3px #eee;
padding: 8pt;
font-family: monospace;
overflow: auto;
margin: 1.2em;
}
pre.src {
position: relative;
overflow: visible;
padding-top: 1.2em;
}
pre.src:before {
display: none;
position: absolute;
background-color: white;
top: -10px;
right: 10px;
padding: 3px;
border: 1px solid black;
}
pre.src:hover:before { display: inline;}
/* Languages per Org manual */
pre.src-asymptote:before { content: 'Asymptote'; }
pre.src-awk:before { content: 'Awk'; }
pre.src-C:before { content: 'C'; }
/* pre.src-C++ doesn't work in CSS */
pre.src-clojure:before { content: 'Clojure'; }
pre.src-css:before { content: 'CSS'; }
pre.src-D:before { content: 'D'; }
pre.src-ditaa:before { content: 'ditaa'; }
pre.src-dot:before { content: 'Graphviz'; }
pre.src-calc:before { content: 'Emacs Calc'; }
pre.src-emacs-lisp:before { content: 'Emacs Lisp'; }
pre.src-fortran:before { content: 'Fortran'; }
pre.src-gnuplot:before { content: 'gnuplot'; }
pre.src-haskell:before { content: 'Haskell'; }
pre.src-hledger:before { content: 'hledger'; }
pre.src-java:before { content: 'Java'; }
pre.src-js:before { content: 'Javascript'; }
pre.src-latex:before { content: 'LaTeX'; }
pre.src-ledger:before { content: 'Ledger'; }
pre.src-lisp:before { content: 'Lisp'; }
pre.src-lilypond:before { content: 'Lilypond'; }
pre.src-lua:before { content: 'Lua'; }
pre.src-matlab:before { content: 'MATLAB'; }
pre.src-mscgen:before { content: 'Mscgen'; }
pre.src-ocaml:before { content: 'Objective Caml'; }
pre.src-octave:before { content: 'Octave'; }
pre.src-org:before { content: 'Org mode'; }
pre.src-oz:before { content: 'OZ'; }
pre.src-plantuml:before { content: 'Plantuml'; }
pre.src-processing:before { content: 'Processing.js'; }
pre.src-python:before { content: 'Python'; }
pre.src-R:before { content: 'R'; }
pre.src-ruby:before { content: 'Ruby'; }
pre.src-sass:before { content: 'Sass'; }
pre.src-scheme:before { content: 'Scheme'; }
pre.src-screen:before { content: 'Gnu Screen'; }
pre.src-sed:before { content: 'Sed'; }
pre.src-sh:before { content: 'shell'; }
pre.src-sql:before { content: 'SQL'; }
pre.src-sqlite:before { content: 'SQLite'; }
/* additional languages in org.el's org-babel-load-languages alist */
pre.src-forth:before { content: 'Forth'; }
pre.src-io:before { content: 'IO'; }
pre.src-J:before { content: 'J'; }
pre.src-makefile:before { content: 'Makefile'; }
pre.src-maxima:before { content: 'Maxima'; }
pre.src-perl:before { content: 'Perl'; }
pre.src-picolisp:before { content: 'Pico Lisp'; }
pre.src-scala:before { content: 'Scala'; }
pre.src-shell:before { content: 'Shell Script'; }
pre.src-ebnf2ps:before { content: 'ebfn2ps'; }
/* additional language identifiers per "defun org-babel-execute"
in ob-*.el */
pre.src-cpp:before { content: 'C++'; }
pre.src-abc:before { content: 'ABC'; }
pre.src-coq:before { content: 'Coq'; }
pre.src-groovy:before { content: 'Groovy'; }
/* additional language identifiers from org-babel-shell-names in
ob-shell.el: ob-shell is the only babel language using a lambda to put
the execution function name together. */
pre.src-bash:before { content: 'bash'; }
pre.src-csh:before { content: 'csh'; }
pre.src-ash:before { content: 'ash'; }
pre.src-dash:before { content: 'dash'; }
pre.src-ksh:before { content: 'ksh'; }
pre.src-mksh:before { content: 'mksh'; }
pre.src-posh:before { content: 'posh'; }
/* Additional Emacs modes also supported by the LaTeX listings package */
pre.src-ada:before { content: 'Ada'; }
pre.src-asm:before { content: 'Assembler'; }
pre.src-caml:before { content: 'Caml'; }
pre.src-delphi:before { content: 'Delphi'; }
pre.src-html:before { content: 'HTML'; }
pre.src-idl:before { content: 'IDL'; }
pre.src-mercury:before { content: 'Mercury'; }
pre.src-metapost:before { content: 'MetaPost'; }
pre.src-modula-2:before { content: 'Modula-2'; }
pre.src-pascal:before { content: 'Pascal'; }
pre.src-ps:before { content: 'PostScript'; }
pre.src-prolog:before { content: 'Prolog'; }
pre.src-simula:before { content: 'Simula'; }
pre.src-tcl:before { content: 'tcl'; }
pre.src-tex:before { content: 'TeX'; }
pre.src-plain-tex:before { content: 'Plain TeX'; }
pre.src-verilog:before { content: 'Verilog'; }
pre.src-vhdl:before { content: 'VHDL'; }
pre.src-xml:before { content: 'XML'; }
pre.src-nxml:before { content: 'XML'; }
/* add a generic configuration mode; LaTeX export needs an additional
(add-to-list 'org-latex-listings-langs '(conf " ")) in .emacs */
pre.src-conf:before { content: 'Configuration File'; }
table { border-collapse:collapse; }
caption.t-above { caption-side: top; }
caption.t-bottom { caption-side: bottom; }
td, th { vertical-align:top; }
th.org-right { text-align: center; }
th.org-left { text-align: center; }
th.org-center { text-align: center; }
td.org-right { text-align: right; }
td.org-left { text-align: left; }
td.org-center { text-align: center; }
dt { font-weight: bold; }
.footpara { display: inline; }
.footdef { margin-bottom: 1em; }
.figure { padding: 1em; }
.figure p { text-align: center; }
.inlinetask {
padding: 10px;
border: 2px solid gray;
margin: 10px;
background: #ffffcc;
}
#org-div-home-and-up
{ text-align: right; font-size: 70%; white-space: nowrap; }
textarea { overflow-x: auto; }
.linenr { font-size: smaller }
.code-highlighted { background-color: #ffff00; }
.org-info-js_info-navigation { border-style: none; }
#org-info-js_console-label
{ font-size: 10px; font-weight: bold; white-space: nowrap; }
.org-info-js_search-highlight
{ background-color: #ffff00; color: #000000; font-weight: bold; }
.org-svg { width: 90%; }
/*]]>*/-->
</style>
<script type="text/javascript">
/*
@licstart The following is the entire license notice for the
JavaScript code in this tag.
Copyright (C) 2012-2018 Free Software Foundation, Inc.
The JavaScript code in this tag is free software: you can
redistribute it and/or modify it under the terms of the GNU
General Public License (GNU GPL) as published by the Free Software
Foundation, either version 3 of the License, or (at your option)
any later version. The code is distributed WITHOUT ANY WARRANTY;
without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU GPL for more details.
As additional permission under GNU GPL version 3 section 7, you
may distribute non-source (e.g., minimized or compacted) forms of
that code without the copy of the GNU GPL normally required by
section 4, provided you include this license notice and a URL
through which recipients can access the Corresponding Source.
@licend The above is the entire license notice
for the JavaScript code in this tag.
*/
<!--/*--><![CDATA[/*><!--*/
function CodeHighlightOn(elem, id)
{
var target = document.getElementById(id);
if(null != target) {
elem.cacheClassElem = elem.className;
elem.cacheClassTarget = target.className;
target.className = "code-highlighted";
elem.className = "code-highlighted";
}
}
function CodeHighlightOff(elem, id)
{
var target = document.getElementById(id);
if(elem.cacheClassElem)
elem.className = elem.cacheClassElem;
if(elem.cacheClassTarget)
target.className = elem.cacheClassTarget;
}
/*]]>*///-->
</script>
</head>
<body>
<div id="content">
<p>
We are going to experiment with our development process, getting away
from cycles and towards more continuous development. The main idea is
to get rid of the prod and QA branches and instead deploy directly
from master, which we keep deployment ready at all times. Development
occurs on private branches, each branch mapped to a separately
deploy-able project. Each of projects will be managed more or less
independently and will include specification, development and
validation stages. At any particular time we might have anywhere from
1 to 6 projects in flight each of which continuously pulls from master,
but does not push back to master until the code is ready to be
deployed to production. The point at which a project is ready to be
deployed then takes roughly the place of the QA phase of our old cycle
mode. At this time, we will do a PR, and go through a series of
validation steps, to make sure the work meets our standards. This
validation includes:
</p>
<ul class="org-ul">
<li>Code Reviews</li>
<li>Acceptance Testing (including UI and business tests)</li>
<li>Automated System testing (to be developed)</li>
<li>A mini-qa, focused on the feature, by someone not directly involved
in its implementation</li>
<li>If possible, deployment to a beta customer.</li>
</ul>
<p>
Once these QA gates are passed, we will update the release notes, tag
a new version, integrate to master and then ideally immediately deploy
to a customer.
</p>
<p>
The main goal with this change is to reduce the latency from feature
specification to production roll out. We also hope to improve
throughput by making more efficient use of QA time and reducing idle
cycles. We expect people to participate in more than one project
depending on their area of expertise and work load. This does not mean
people will work on two things at the same time, rather that people
come into and leave projects as they free up and not when the project
starts or ends.
</p>
<p>
This new scheme will come into full effect when we finish 1.3
although to some degree 1.3 was already setup like this. At the
moment, we have 3 major projects, vap/settlments/implied, grid
settings and speed work, which are in branches of prod. We will merge
these back to prod and then master this week. We have 3 other projects
that are in master, the excel API, the server side SDK and the MIC
administration and enforcement components. These we hope to stabilize
as soon as possible so that we can merge them to prod and deploy them
along with the rest. Once we have all this, prod and master should be
identical and we will delete prod and operate exclusively out of
master. Please avoid committing anything new to master so we can
complete this transition as soon as possible.
</p>
<p>
Let me know if you have any question
</p>
</div>
<div id="postamble" class="status">
<p class="author">Author: ppinto</p>
<p class="date">Created: 2018-10-08 Mon 18:50</p>
<p class="validation"><a href="http://validator.w3.org/check?uri=referer">Validate</a></p>
</div>
</body>
</html>
+55
View File
@@ -0,0 +1,55 @@
We are going to experiment with our development process, getting away
from cycles and towards more continuous development. The main idea is
to get rid of the prod and QA branches and instead deploy directly
from master, which we keep deployment ready at all times. Development
occurs on private branches, each branch mapped to a separately
deploy-able project. Each of projects will be managed more or less
independently and will include specification, development and
validation stages. At any particular time we might have anywhere from
1 to 6 projects in flight each of which continuously pulls from master,
but does not push back to master until the code is ready to be
deployed to production. The point at which a project is ready to be
deployed then takes roughly the place of the QA phase of our old cycle
mode. At this time, we will do a PR, and go through a series of
validation steps, to make sure the work meets our standards. This
validation includes:
- Code Reviews
- Acceptance Testing (including UI and business tests)
- Automated System testing (to be developed)
- A mini-qa, focused on the feature, by someone not directly involved
in its implementation
- If possible, deployment to a beta customer.
Once these QA gates are passed, we will update the release notes, tag
a new version, integrate to master and then ideally immediately deploy
to a customer.
The main goal with this change is to reduce the latency from feature
specification to production roll out. We also hope to improve
throughput by making more efficient use of QA time and reducing idle
cycles. We expect people to participate in more than one project
depending on their area of expertise and work load. This does not mean
people will work on two things at the same time, rather that people
come into and leave projects as they free up and not when the project
starts or ends.
This new scheme will come into full effect when we finish 1.3
although to some degree 1.3 was already setup like this. At the
moment, we have 3 major projects, vap/settlments/implied, grid
settings and speed work, which are in branches of prod. We will merge
these back to prod and then master this week. We have 3 other projects
that are in master, the excel API, the server side SDK and the MIC
administration and enforcement components. These we hope to stabilize
as soon as possible so that we can merge them to prod and deploy them
along with the rest. Once we have all this, prod and master should be
identical and we will delete prod and operate exclusively out of
master. Please avoid committing anything new to master so we can
complete this transition as soon as possible.
Let me know if you have any question
+12
View File
@@ -0,0 +1,12 @@
{% extends "base.html" %}
{% block content %}
<div class="row-fluid">
<div id="main-content" class="span12">
<h1 id="404-page-not-found" style="text-align: center">404</h1>
<p style="text-align: center"><strong>Page not found</strong></p>
</div>
</div>
{% endblock %}
View File
Whitespace-only changes.
+121
View File
@@ -0,0 +1,121 @@
<!DOCTYPE html>
<html lang="en">
<head>
{%- block site_meta %}
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="keywords" content="Futures, Options, Derivatives, Trade, Trading, Professional, options trading, futures trading, Software" />
<meta name="rights" content="© Blue Trading Systems" />
<meta name="description" content="Documentation for Blue Trading Systems' BTS Spark" />
{% if config.site_author %}<meta name="author" content="{{ config.site_author }}">{% endif %}
{% if page and page.canonical_url %}<link rel="canonical" href="{{ page.canonical_url }}">{% endif %}
{% if config.site_favicon %}<link rel="shortcut icon" href="{{ base_url }}/{{ config.site_favicon }}">
{% else %}<link rel="shortcut icon" href="{{ base_url }}/img/favicon.ico">{% endif %}
{%- endblock %}
{%- block htmltitle %}
<title>{% if page and page.title and not page.is_homepage %}{{ page.title }} - {% endif %}{{ config.site_name }}</title>
{%- endblock %}
{%- block styles %}
<link rel="stylesheet" href="{{ base_url }}/css/bts.css" type="text/css" />
<link href="{{ base_url }}/css/font-awesome.min.css" rel="stylesheet">
<link href="{{ base_url }}/css/base.css" rel="stylesheet">
<link rel="stylesheet" href="{{ base_url }}/css/highlight.css">
<link href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,600" rel="stylesheet" />
<link rel="stylesheet" href="{{ base_url }}/css/local.css?1529096332" type="text/css" />
<!--link rel="stylesheet" href="https://www.bluetradingsystems.com/templates/bluetradesys/scripts/colorbox-master/example5/colorbox.css" type="text/css" /-->
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
<script src="https://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"></script>
<![endif]-->
{%- for path in extra_css %}
<link href="{{ path }}" rel="stylesheet">
{%- endfor %}
{%- endblock %}
{%- block extrahead %} {% endblock %}
<script>
dataLayer = [];
</script>
<script>
debug_mode = location.hostname !== "www.bluetradingsystems.com";
if(debug_mode)
{
console.log("debug mode enabled (no analytics)");
if(location.hostname !== "www.bluetradingsystems.com")
{
console.log("Hostname != www.bluetradingsystems.com");
}
}
else
{
(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-56FHG8R');
}
</script>
<script src="{{ base_url }}/js/jquery-1.10.2.min.js" defer></script>
<script src="{{ base_url }}/js/bootstrap-3.0.3.min.js" defer></script>
</head>
<body{% if page and page.is_homepage %} class="homepage"{% endif %}>
<!-- Google Tag Manager (noscript) -->
<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-56FHG8R"
height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
<!-- End Google Tag Manager (noscript) -->
{% include "nav.html" %}
<div class="container">
{%- block content %}
<div class="col-md-3">{% include "toc.html" %}</div>
<div class="col-md-9" role="main">{% include "content.html" %}</div>
{%- endblock %}
</div>
<footer class="col-md-12">
{%- block footer %}
{%- if config.copyright %}
<p>{{ config.copyright }}</p>
{%- endif %}
{%- endblock %}
</footer>
{%- block scripts %}
<script>var base_url = '{{ base_url }}';</script>
<script src="{{ base_url }}/js/base.js" defer></script>
{%- for path in extra_javascript %}
<script src="{{ path }}" defer></script>
{%- endfor %}
{%- endblock %}
{% if 'search' in config['plugins'] %}{%- include "search-modal.html" %}{% endif %}
{%- include "keyboard-modal.html" %}
{% if page and page.is_homepage %}
<!--p style="float:right; padding: 1em; color:#bbb;">
Build Date UTC : {{ build_date_utc }}
</p-->
{% endif %}
<script src="{{ base_url }}/js/highlight.pack.js" defer></script>
<script src="https://cdn.rawgit.com/google/code-prettify/master/loader/run_prettify.js"></script>
<!--script src="https://www.bluetradingsystems.com/templates/bluetradesys/scripts/colorbox-master/jquery.colorbox-min.js"></script-->
</body>
</html>
+9
View File
@@ -0,0 +1,9 @@
{% if page.meta.source %}
<div class="source-links">
{% for filename in page.meta.source %}
<span class="label label-primary">{{ filename }}</span>
{% endfor %}
</div>
{% endif %}
{{ page.content }}
+335
View File
@@ -0,0 +1,335 @@
body {
padding-top: 70px;
}
/* Replacement for `body { background-attachment: fixed; }`, which has
performance issues when scrolling on large displays. See #1394. */
body::before {
content: ' ';
position: fixed;
width: 100%;
height: 100%;
top: 0;
left: 0;
background-color: #f6f6f6;
will-change: transform;
z-index: -1;
}
body > .container {
min-height: 400px;
}
ul.nav .main {
font-weight: bold;
}
.col-md-3 {
padding-left: 0;
}
.col-md-9 {
padding-bottom: 100px;
}
.source-links {
float: right;
}
.col-md-9 img {
max-width: 100%;
display: inline-block;
padding: 4px;
line-height: 1.428571429;
background-color: #fff;
border: 1px solid #ddd;
border-radius: 4px;
margin: 20px auto 30px auto;
}
/*
* The code below adds some padding to the top of the current anchor target so
* that, when navigating to it, the header isn't hidden by the navbar at the
* top.
*/
:target::before {
content: "";
display: block;
margin-top: -75px;
height: 75px;
pointer-events: none;
}
h1 {
color: #444;
font-weight: 400;
font-size: 42px;
}
h2, h3, h4, h5, h6 {
color: #444;
font-weight: 300;
}
hr {
border-top: 1px solid #aaa;
}
pre, .rst-content tt {
max-width: 100%;
background: #fff;
border: solid 1px #e1e4e5;
color: #333;
overflow-x: auto;
}
code.code-large, .rst-content tt.code-large {
font-size: 90%;
}
code {
padding: 2px 5px;
background: #fff;
border: solid 1px #e1e4e5;
color: #333;
white-space: pre-wrap;
word-wrap: break-word;
}
pre code {
background: transparent;
border: none;
white-space: pre;
word-wrap: normal;
font-family: monospace,serif;
font-size: 12px;
}
kbd {
padding: 2px 4px;
font-size: 90%;
color: #fff;
background-color: #333;
border-radius: 3px;
-webkit-box-shadow: inset 0 -1px 0 rgba(0,0,0,.25);
box-shadow: inset 0 -1px 0 rgba(0,0,0,.25);
}
a code {
color: #2FA4E7;
}
a:hover code, a:focus code {
color: #157AB5;
}
footer {
margin-top: 30px;
margin-bottom: 10px;
text-align: center;
font-weight: 200;
}
.modal-dialog {
margin-top: 60px;
}
/*
* Side navigation
*
* Scrollspy and affixed enhanced navigation to highlight sections and secondary
* sections of docs content.
*/
/* By default it's not affixed in mobile views, so undo that */
.bs-sidebar.affix { /* csslint allow: adjoining-classes */
position: static;
}
.bs-sidebar.well { /* csslint allow: adjoining-classes */
padding: 0;
max-height: 90%;
overflow-y: auto;
}
/* First level of nav */
.bs-sidenav {
padding-top: 10px;
padding-bottom: 10px;
border-radius: 5px;
}
/* All levels of nav */
.bs-sidebar .nav .active ul > li > a {
display: block;
padding: 5px 20px;
z-index: 1;
}
.bs-sidebar .nav .active ul {
list-style-type: none;
padding-left: 1ex;
}
.bs-sidebar .nav > li > a:hover,
.bs-sidebar .nav > li > a:focus,
.bs-sidebar .nav .active ul li:hover > a,
.bs-sidebar .nav .active ul li:focus > a {
text-decoration: none;
border-right: 1px solid;
}
.bs-sidebar .nav > .active > a,
.bs-sidebar .nav > .active:hover > a,
.bs-sidebar .nav > .active:focus > a,
.bs-sidebar .nav .active ul li.active > a,
.bs-sidebar .nav .active ul li.active:hover > a,
.bs-sidebar .nav .active ul li.active:focus > a {
font-weight: bold;
background-color: transparent;
border-right: 1px solid;
}
/* Nav: second level (shown on .active) */
.bs-sidebar .nav .nav {
display: none; /* Hide by default, but at >768px, show it */
margin-bottom: 8px;
}
.bs-sidebar .nav .nav > li > a {
padding-top: 3px;
padding-bottom: 3px;
padding-left: 30px;
font-size: 90%;
}
/* Show and affix the side nav when space allows it */
@media (min-width: 992px) {
/* Workaround a Safari bug when zooming to < 100%
https://github.com/mkdocs/mkdocs/issues/1050 */
.col-md-9 {
box-sizing: border-box; /* csslint allow: box-sizing */
padding-left: 25%;
width: 100%;
}
.bs-sidebar .nav > .active > ul {
display: block;
}
/* Widen the fixed sidebar */
.bs-sidebar.affix, /* csslint allow: adjoining-classes */
.bs-sidebar.affix-bottom { /* csslint allow: adjoining-classes */
width: 213px;
}
.bs-sidebar.affix { /* csslint allow: adjoining-classes */
position: fixed; /* Undo the static from mobile first approach */
top: 80px;
}
.bs-sidebar.affix-bottom { /* csslint allow: adjoining-classes */
position: absolute; /* Undo the static from mobile first approach */
}
.bs-sidebar.affix-bottom .bs-sidenav, /* csslint allow: adjoining-classes */
.bs-sidebar.affix .bs-sidenav { /* csslint allow: adjoining-classes */
margin-top: 0;
margin-bottom: 0;
}
}
@media (min-width: 1200px) {
/* Widen the fixed sidebar again */
.bs-sidebar.affix-bottom, /* csslint allow: adjoining-classes */
.bs-sidebar.affix { /* csslint allow: adjoining-classes */
width: 263px;
}
}
.headerlink {
font-family: FontAwesome;
font-size: 14px;
display: none;
padding-left: .5em;
}
h1:hover .headerlink, h2:hover .headerlink, h3:hover .headerlink, h4:hover .headerlink, h5:hover .headerlink, h6:hover .headerlink{
display:inline-block;
}
.admonition {
padding: 15px;
margin-bottom: 20px;
border: 1px solid transparent;
border-radius: 4px;
text-align: left;
}
.admonition.note { /* csslint allow: adjoining-classes */
color: #19bbff;
background-color: #d9edf7;
border-color: #bce8f1;
}
.admonition.warning { /* csslint allow: adjoining-classes */
color: #bf6600;
background-color: #fcf8e3;
border-color: #fbeed5;
}
.admonition.danger { /* csslint allow: adjoining-classes */
color: #f04124;
background-color: #f2dede;
border-color: #eed3d7;
}
.admonition-title {
font-weight: bold;
text-align: left;
}
.dropdown-submenu {
position: relative;
}
.dropdown-submenu>.dropdown-menu {
top: 0;
left: 100%;
margin-top: -6px;
margin-left: -1px;
-webkit-border-radius: 0 6px 6px 6px;
-moz-border-radius: 0 6px 6px;
border-radius: 0 6px 6px 6px;
}
.dropdown-submenu:hover>.dropdown-menu {
display: block;
}
.dropdown-submenu>a:after {
display: block;
content: " ";
float: right;
width: 0;
height: 0;
border-color: transparent;
border-style: solid;
border-width: 5px 0 5px 5px;
border-left-color: #ccc;
margin-top: 5px;
margin-right: -10px;
}
.dropdown-submenu:hover>a:after {
border-left-color: #fff;
}
.dropdown-submenu.pull-left { /* csslint allow: adjoining-classes */
float: none;
}
.dropdown-submenu.pull-left>.dropdown-menu { /* csslint allow: adjoining-classes */
left: -100%;
margin-left: 10px;
-webkit-border-radius: 6px 0 6px 6px;
-moz-border-radius: 6px 0 6px 6px;
border-radius: 6px 0 6px 6px;
}
+1
View File
@@ -0,0 +1 @@
@import url("//fonts.googleapis.com/css?family=Open+Sans:300ita@import url("//fonts.googleapis.com/css?family=Open+Sans:300italic,400italic,700italic,400,300,700");/*! normalize.css v3.0.1 | MIT License | git.io/normalize */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}h1{font-size:2em;margin:0.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace, monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0}input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{height:auto}input[type="search"]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:0.35em 0.625em 0.75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:bold}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}@media print{*{text-shadow:none !important;color:#000 !important;background:transparent !important;box-shadow:none !important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="javascript:"]:after,a[href^="#"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100% !important}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}select{background:#fff !important}.navbar{display:none}.table td,.table th{background-color:#fff !important}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000 !important}.label{border:1px solid #000}.table{border-collapse:collapse !important}.table-bordered th,.table-bordered td{border:1px solid #ddd !important}}@font-face{font-family:'Glyphicons Halflings';src:url('../fonts/glyphicons-halflings-regular.eot');src:url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'),url('../fonts/glyphicons-halflings-regular.woff') format('woff'),url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'),url('../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg')}.glyphicon{position:relative;top:1px;display:inline-block;font-family:'Glyphicons Halflings';font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.glyphicon-asterisk:before{content:"\2a"}.glyphicon-plus:before{content:"\2b"}.glyphicon-euro:before{content:"\20ac"}.glyphicon-minus:before{content:"\2212"}.glyphicon-cloud:before{content:"\2601"}.glyphicon-envelope:before{content:"\2709"}.glyphicon-pencil:before{content:"\270f"}.glyphicon-glass:before{content:"\e001"}.glyphicon-music:before{content:"\e002"}.glyphicon-search:before{content:"\e003"}.glyphicon-heart:before{content:"\e005"}.glyphicon-star:before{content:"\e006"}.glyphicon-star-empty:before{content:"\e007"}.glyphicon-user:before{content:"\e008"}.glyphicon-film:before{content:"\e009"}.glyphicon-th-large:before{content:"\e010"}.glyphicon-th:before{content:"\e011"}.glyphicon-th-list:before{content:"\e012"}.glyphicon-ok:before{content:"\e013"}.glyphicon-remove:before{content:"\e014"}.glyphicon-zoom-in:before{content:"\e015"}.glyphicon-zoom-out:before{content:"\e016"}.glyphicon-off:before{content:"\e017"}.glyphicon-signal:before{content:"\e018"}.glyphicon-cog:before{content:"\e019"}.glyphicon-trash:before{content:"\e020"}.glyphicon-home:before{content:"\e021"}.glyphicon-file:before{content:"\e022"}.glyphicon-time:before{content:"\e023"}.glyphicon-road:before{content:"\e024"}.glyphicon-download-alt:before{content:"\e025"}.glyphicon-download:before{content:"\e026"}.glyphicon-upload:before{content:"\e027"}.glyphicon-inbox:before{content:"\e028Line truncated
@@ -0,0 +1,18 @@
@font-face {
font-family: 'Source Sans Pro';
font-style: normal;
font-weight: 300;
src: local('Source Sans Pro Light'), local('SourceSansPro-Light'), url(../fonts/Source-Sans-Pro-300.ttf) format('truetype');
}
@font-face {
font-family: 'Source Sans Pro';
font-style: normal;
font-weight: 400;
src: local('Source Sans Pro Regular'), local('SourceSansPro-Regular'), url(../fonts/Source-Sans-Pro-400.ttf) format('truetype');
}
@font-face {
font-family: 'Source Sans Pro';
font-style: normal;
font-weight: 600;
src: local('Source Sans Pro SemiBold'), local('SourceSansPro-SemiBold'), url(../fonts/Source-Sans-Pro-600.ttf) format('truetype');
}
+4
View File
@@ -0,0 +1,4 @@
/*!
* Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome
* License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
*/@font-face{font-family:'FontAwesome';src:url('../fonts/fontawesome-webfont.eot?v=4.7.0');src:url('../fonts/fontawesome-webfont.eot?#iefix&v=4.7.0') format('embedded-opentype'),url('../fonts/fontawesome-webfont.woff2?v=4.7.0') format('woff2'),url('../fonts/fontawesome-webfont.woff?v=4.7.0') format('woff'),url('../fonts/fontawesome-webfont.ttf?v=4.7.0') format('truetype'),url('../fonts/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular') format('svg');font-weight:normal;font-style:normal}.fa{display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-lg{font-size:1.33333333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.28571429em;text-align:center}.fa-ul{padding-left:0;margin-left:2.14285714em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14285714em;width:2.14285714em;top:.14285714em;text-align:center}.fa-li.fa-lg{left:-1.85714286em}.fa-border{padding:.2em .25em .15em;border:solid .08em #eee;border-radius:.1em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left{margin-right:.3em}.fa.fa-pull-right{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.fa-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scale(-1, 1);-ms-transform:scale(-1, 1);transform:scale(-1, 1)}.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";-webkit-transform:scale(1, -1);-ms-transform:scale(1, -1);transform:scale(1, -1)}:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-flip-horizontal,:root .fa-flip-vertical{filter:none}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-remove:before,.fa-close:before,.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-gear:before,.fa-cog:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-rotate-right:before,.fa-repeat:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f03Line truncated
+124
View File
@@ -0,0 +1,124 @@
/*
This is the GitHub theme for highlight.js
github.com style (c) Vasily Polovnyov <vast@whiteants.net>
*/
.hljs {
display: block;
overflow-x: auto;
color: #333;
-webkit-text-size-adjust: none;
}
.hljs-comment,
.diff .hljs-header,
.hljs-javadoc {
color: #998;
font-style: italic;
}
.hljs-keyword,
.css .rule .hljs-keyword,
.hljs-winutils,
.nginx .hljs-title,
.hljs-subst,
.hljs-request,
.hljs-status {
color: #333;
font-weight: bold;
}
.hljs-number,
.hljs-hexcolor,
.ruby .hljs-constant {
color: #008080;
}
.hljs-string,
.hljs-tag .hljs-value,
.hljs-phpdoc,
.hljs-dartdoc,
.tex .hljs-formula {
color: #d14;
}
.hljs-title,
.hljs-id,
.scss .hljs-preprocessor {
color: #900;
font-weight: bold;
}
.hljs-list .hljs-keyword,
.hljs-subst {
font-weight: normal;
}
.hljs-class .hljs-title,
.hljs-type,
.vhdl .hljs-literal,
.tex .hljs-command {
color: #458;
font-weight: bold;
}
.hljs-tag,
.hljs-tag .hljs-title,
.hljs-rule .hljs-property,
.django .hljs-tag .hljs-keyword {
color: #000080;
font-weight: normal;
}
.hljs-attribute,
.hljs-variable,
.lisp .hljs-body,
.hljs-name {
color: #008080;
}
.hljs-regexp {
color: #009926;
}
.hljs-symbol,
.ruby .hljs-symbol .hljs-string,
.lisp .hljs-keyword,
.clojure .hljs-keyword,
.scheme .hljs-keyword,
.tex .hljs-special,
.hljs-prompt {
color: #990073;
}
.hljs-built_in {
color: #0086b3;
}
.hljs-preprocessor,
.hljs-pragma,
.hljs-pi,
.hljs-doctype,
.hljs-shebang,
.hljs-cdata {
color: #999;
font-weight: bold;
}
.hljs-deletion {
background: #fdd;
}
.hljs-addition {
background: #dfd;
}
.diff .hljs-change {
background: #0086b3;
}
.hljs-chunk {
color: #aaa;
}
+347
View File
@@ -0,0 +1,347 @@
.navbar-default .navbar-toggle .icon-bar
{
background-color: #666;
}
body
{
font-family: 'Source Sans Pro', 'Open Sans', sans-serif;
font-weight: 400;
height: 100%;
}
h1, h2, h3, h4, h5, h6
{
font-family: 'Source Sans Pro', 'Open Sans', sans-serif;
font-weight: 300;
}
h2 {
padding-top:40px;
margin-top:0;
}
.content
{
background-color: #f6f6f6;
padding: 0;
}
.container-fluid
{
padding:0;
}
h2
{
background: none;
color:#383431;
}
h2 a, h2 a:hover
{
color:#383431;
}
.content img
{
border: 2px solid #666;
margin:1.5em;
}
.content img.screenshot
{
border:0;
}
.card
{
background-color: #eee;
}
.video-background-div {
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
overflow: hidden;
z-index: -100;
}
.video-background
{
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
/*opacity: 0.5;*/
}
header h1
{
color:#fff;
}
header.home-main h2
{
margin-top:10%;
font-size: 90px;
}
header.page-main
{
margin:50px;
padding:10px;
text-align:center;
color: #333;
}
header.page-main h1
{
color:#fff;
}
#footer
{
color: #fff;
padding: 2em 0;
}
#footer a
{
color: #999;
}
#footer a:hover
{
color: #aaa;
}
.gallery-image img
{
display: block;
max-width: 100%;
height: auto;
}
.demo_menu, .navbar-default .navbar-nav a.demo_menu /*.navbar-default .navbar-nav>li>a.demo_menu*/
{
background-color: #19bbff;
color:#fff;
}
.navbar-logo
{
width: 114px;
margin-top:-5px;
}
/* Row colors */
.outer_row
{
padding: 2em 0;
}
.row_cyan_lightest
{
background-color: #E6F3F9;
}
.row_cyan_lighter
{
background-color: #BFE1EF;
}
.row_cyan_light
{
background-color: #80C3E0;
}
.row_cyan_medium
{
background-color: #40A5CF;
}
.row_cyan
{
background-color: #0072A2;
color:#fff;
}
.row_cyan_dark
{
background-color: #00658F;
color:#fff;
}
.row_cyan_darker
{
background-color: #004360;
color:#fff;
}
.row_shell
{
background-color: #f6f6f6;
}
.row_gray
{
background-color: #b3b3b3;
}
.row_black
{
background-color: #000;
color:#fff;
}
.row_cyan_darker a, .row_cyan_dark a, .row_cyan a, .row_black a, .row_contact_form a
{
color:#80C3E0;
}
.row_cyan_darker h2, .row_cyan_dark h2, .row_cyan h2, .row_black h2, .row_contact_form h2
{
color:#BFE1EF;
}
/* News Page */
.pagination
{
float:right;
}
.pagination ul
{
list-style-type: none;
}
.pagination ul li
{
display: inline;
padding:0.3em;
}
.pagination ul li a
{
padding:0.2em;
}
.video_thumb_container
{
margin:0.5em;
}
#fixed_nav
{
position: fixed;
top:280px;
background-image: linear-gradient(to bottom, rgba(255,255,255,0.5) 0, rgba(255,255,255,0.5) 100%);
margin-left: 2em;
z-index: 900;
}
#fixed_nav ul
{
list-style-type: none;
padding: 2em 0;
}
#fixed_nav a
{
display: inline-block;
width:100%;
color: #333;
font-weight:bold;
padding:0.3em 2em;
}
#fixed_nav a:hover
{
background-color: #BFE1EF;
text-decoration: none;
}
.question_buttons span
{
font-size: 150%;
padding: 0 5.5em;
}
.thumbnail img
{
max-width:85%;
margin-top:1em;
margin-bottom:1em;
}
/*************************************/
.navbar-transition {
-webkit-transition: all 1s ease-in-out;
-moz-transition: all 1s ease-in-out;
-o-transition: all 1s ease-in-out;
transition: all 1s ease-in-out;
}
@media screen and (min-width: 760px)
{
.navbar-inverse
{
background-color: inherit;
background-image: linear-gradient(to bottom, rgba(0,0,0,0.8) 0, rgba(0,0,0,0.1) 100%);
}
.navbar
{
border-bottom:0;
}
.navbar-inverse .dropdown-menu>li>a:focus
{
background-color: #f6f6f6;
color:#000;
}
}
@media screen and (max-width: 760px)
{
#small-screen-menu-items
{
display:inherit;
}
a
{
line-height: 200%;
}
}
/* Code (google/code-prettify) */
/* desert scheme ported from vim to google prettify */
pre.prettyprint
{
display: block;
background-color: #eee;
border: 1px #ddd solid !important;
padding: .5em !important;
}
.col-md-9 img {
border:0;
background-color:inherit;
padding:0;
border-radius: 0;
margin:0;
}
Binary file not shown.
File diff suppressed because it is too large. Load diff

After

Width:  |  Height:  |  Size: 434 KiB

@@ -0,0 +1,288 @@
<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
<svg xmlns="http://www.w3.org/2000/svg">
<metadata></metadata>
<defs>
<font id="glyphicons_halflingsregular" horiz-adv-x="1200" >
<font-face units-per-em="1200" ascent="960" descent="-240" />
<missing-glyph horiz-adv-x="500" />
<glyph horiz-adv-x="0" />
<glyph horiz-adv-x="400" />
<glyph unicode=" " />
<glyph unicode="*" d="M600 1100q15 0 34 -1.5t30 -3.5l11 -1q10 -2 17.5 -10.5t7.5 -18.5v-224l158 158q7 7 18 8t19 -6l106 -106q7 -8 6 -19t-8 -18l-158 -158h224q10 0 18.5 -7.5t10.5 -17.5q6 -41 6 -75q0 -15 -1.5 -34t-3.5 -30l-1 -11q-2 -10 -10.5 -17.5t-18.5 -7.5h-224l158 -158 q7 -7 8 -18t-6 -19l-106 -106q-8 -7 -19 -6t-18 8l-158 158v-224q0 -10 -7.5 -18.5t-17.5 -10.5q-41 -6 -75 -6q-15 0 -34 1.5t-30 3.5l-11 1q-10 2 -17.5 10.5t-7.5 18.5v224l-158 -158q-7 -7 -18 -8t-19 6l-106 106q-7 8 -6 19t8 18l158 158h-224q-10 0 -18.5 7.5 t-10.5 17.5q-6 41 -6 75q0 15 1.5 34t3.5 30l1 11q2 10 10.5 17.5t18.5 7.5h224l-158 158q-7 7 -8 18t6 19l106 106q8 7 19 6t18 -8l158 -158v224q0 10 7.5 18.5t17.5 10.5q41 6 75 6z" />
<glyph unicode="+" d="M450 1100h200q21 0 35.5 -14.5t14.5 -35.5v-350h350q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-350v-350q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v350h-350q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5 h350v350q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xa0;" />
<glyph unicode="&#xa5;" d="M825 1100h250q10 0 12.5 -5t-5.5 -13l-364 -364q-6 -6 -11 -18h268q10 0 13 -6t-3 -14l-120 -160q-6 -8 -18 -14t-22 -6h-125v-100h275q10 0 13 -6t-3 -14l-120 -160q-6 -8 -18 -14t-22 -6h-125v-174q0 -11 -7.5 -18.5t-18.5 -7.5h-148q-11 0 -18.5 7.5t-7.5 18.5v174 h-275q-10 0 -13 6t3 14l120 160q6 8 18 14t22 6h125v100h-275q-10 0 -13 6t3 14l120 160q6 8 18 14t22 6h118q-5 12 -11 18l-364 364q-8 8 -5.5 13t12.5 5h250q25 0 43 -18l164 -164q8 -8 18 -8t18 8l164 164q18 18 43 18z" />
<glyph unicode="&#x2000;" horiz-adv-x="650" />
<glyph unicode="&#x2001;" horiz-adv-x="1300" />
<glyph unicode="&#x2002;" horiz-adv-x="650" />
<glyph unicode="&#x2003;" horiz-adv-x="1300" />
<glyph unicode="&#x2004;" horiz-adv-x="433" />
<glyph unicode="&#x2005;" horiz-adv-x="325" />
<glyph unicode="&#x2006;" horiz-adv-x="216" />
<glyph unicode="&#x2007;" horiz-adv-x="216" />
<glyph unicode="&#x2008;" horiz-adv-x="162" />
<glyph unicode="&#x2009;" horiz-adv-x="260" />
<glyph unicode="&#x200a;" horiz-adv-x="72" />
<glyph unicode="&#x202f;" horiz-adv-x="260" />
<glyph unicode="&#x205f;" horiz-adv-x="325" />
<glyph unicode="&#x20ac;" d="M744 1198q242 0 354 -189q60 -104 66 -209h-181q0 45 -17.5 82.5t-43.5 61.5t-58 40.5t-60.5 24t-51.5 7.5q-19 0 -40.5 -5.5t-49.5 -20.5t-53 -38t-49 -62.5t-39 -89.5h379l-100 -100h-300q-6 -50 -6 -100h406l-100 -100h-300q9 -74 33 -132t52.5 -91t61.5 -54.5t59 -29 t47 -7.5q22 0 50.5 7.5t60.5 24.5t58 41t43.5 61t17.5 80h174q-30 -171 -128 -278q-107 -117 -274 -117q-206 0 -324 158q-36 48 -69 133t-45 204h-217l100 100h112q1 47 6 100h-218l100 100h134q20 87 51 153.5t62 103.5q117 141 297 141z" />
<glyph unicode="&#x20bd;" d="M428 1200h350q67 0 120 -13t86 -31t57 -49.5t35 -56.5t17 -64.5t6.5 -60.5t0.5 -57v-16.5v-16.5q0 -36 -0.5 -57t-6.5 -61t-17 -65t-35 -57t-57 -50.5t-86 -31.5t-120 -13h-178l-2 -100h288q10 0 13 -6t-3 -14l-120 -160q-6 -8 -18 -14t-22 -6h-138v-175q0 -11 -5.5 -18 t-15.5 -7h-149q-10 0 -17.5 7.5t-7.5 17.5v175h-267q-10 0 -13 6t3 14l120 160q6 8 18 14t22 6h117v100h-267q-10 0 -13 6t3 14l120 160q6 8 18 14t22 6h117v475q0 10 7.5 17.5t17.5 7.5zM600 1000v-300h203q64 0 86.5 33t22.5 119q0 84 -22.5 116t-86.5 32h-203z" />
<glyph unicode="&#x2212;" d="M250 700h800q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-800q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#x231b;" d="M1000 1200v-150q0 -21 -14.5 -35.5t-35.5 -14.5h-50v-100q0 -91 -49.5 -165.5t-130.5 -109.5q81 -35 130.5 -109.5t49.5 -165.5v-150h50q21 0 35.5 -14.5t14.5 -35.5v-150h-800v150q0 21 14.5 35.5t35.5 14.5h50v150q0 91 49.5 165.5t130.5 109.5q-81 35 -130.5 109.5 t-49.5 165.5v100h-50q-21 0 -35.5 14.5t-14.5 35.5v150h800zM400 1000v-100q0 -60 32.5 -109.5t87.5 -73.5q28 -12 44 -37t16 -55t-16 -55t-44 -37q-55 -24 -87.5 -73.5t-32.5 -109.5v-150h400v150q0 60 -32.5 109.5t-87.5 73.5q-28 12 -44 37t-16 55t16 55t44 37 q55 24 87.5 73.5t32.5 109.5v100h-400z" />
<glyph unicode="&#x25fc;" horiz-adv-x="500" d="M0 0z" />
<glyph unicode="&#x2601;" d="M503 1089q110 0 200.5 -59.5t134.5 -156.5q44 14 90 14q120 0 205 -86.5t85 -206.5q0 -121 -85 -207.5t-205 -86.5h-750q-79 0 -135.5 57t-56.5 137q0 69 42.5 122.5t108.5 67.5q-2 12 -2 37q0 153 108 260.5t260 107.5z" />
<glyph unicode="&#x26fa;" d="M774 1193.5q16 -9.5 20.5 -27t-5.5 -33.5l-136 -187l467 -746h30q20 0 35 -18.5t15 -39.5v-42h-1200v42q0 21 15 39.5t35 18.5h30l468 746l-135 183q-10 16 -5.5 34t20.5 28t34 5.5t28 -20.5l111 -148l112 150q9 16 27 20.5t34 -5zM600 200h377l-182 112l-195 534v-646z " />
<glyph unicode="&#x2709;" d="M25 1100h1150q10 0 12.5 -5t-5.5 -13l-564 -567q-8 -8 -18 -8t-18 8l-564 567q-8 8 -5.5 13t12.5 5zM18 882l264 -264q8 -8 8 -18t-8 -18l-264 -264q-8 -8 -13 -5.5t-5 12.5v550q0 10 5 12.5t13 -5.5zM918 618l264 264q8 8 13 5.5t5 -12.5v-550q0 -10 -5 -12.5t-13 5.5 l-264 264q-8 8 -8 18t8 18zM818 482l364 -364q8 -8 5.5 -13t-12.5 -5h-1150q-10 0 -12.5 5t5.5 13l364 364q8 8 18 8t18 -8l164 -164q8 -8 18 -8t18 8l164 164q8 8 18 8t18 -8z" />
<glyph unicode="&#x270f;" d="M1011 1210q19 0 33 -13l153 -153q13 -14 13 -33t-13 -33l-99 -92l-214 214l95 96q13 14 32 14zM1013 800l-615 -614l-214 214l614 614zM317 96l-333 -112l110 335z" />
<glyph unicode="&#xe001;" d="M700 650v-550h250q21 0 35.5 -14.5t14.5 -35.5v-50h-800v50q0 21 14.5 35.5t35.5 14.5h250v550l-500 550h1200z" />
<glyph unicode="&#xe002;" d="M368 1017l645 163q39 15 63 0t24 -49v-831q0 -55 -41.5 -95.5t-111.5 -63.5q-79 -25 -147 -4.5t-86 75t25.5 111.5t122.5 82q72 24 138 8v521l-600 -155v-606q0 -42 -44 -90t-109 -69q-79 -26 -147 -5.5t-86 75.5t25.5 111.5t122.5 82.5q72 24 138 7v639q0 38 14.5 59 t53.5 34z" />
<glyph unicode="&#xe003;" d="M500 1191q100 0 191 -39t156.5 -104.5t104.5 -156.5t39 -191l-1 -2l1 -5q0 -141 -78 -262l275 -274q23 -26 22.5 -44.5t-22.5 -42.5l-59 -58q-26 -20 -46.5 -20t-39.5 20l-275 274q-119 -77 -261 -77l-5 1l-2 -1q-100 0 -191 39t-156.5 104.5t-104.5 156.5t-39 191 t39 191t104.5 156.5t156.5 104.5t191 39zM500 1022q-88 0 -162 -43t-117 -117t-43 -162t43 -162t117 -117t162 -43t162 43t117 117t43 162t-43 162t-117 117t-162 43z" />
<glyph unicode="&#xe005;" d="M649 949q48 68 109.5 104t121.5 38.5t118.5 -20t102.5 -64t71 -100.5t27 -123q0 -57 -33.5 -117.5t-94 -124.5t-126.5 -127.5t-150 -152.5t-146 -174q-62 85 -145.5 174t-150 152.5t-126.5 127.5t-93.5 124.5t-33.5 117.5q0 64 28 123t73 100.5t104 64t119 20 t120.5 -38.5t104.5 -104z" />
<glyph unicode="&#xe006;" d="M407 800l131 353q7 19 17.5 19t17.5 -19l129 -353h421q21 0 24 -8.5t-14 -20.5l-342 -249l130 -401q7 -20 -0.5 -25.5t-24.5 6.5l-343 246l-342 -247q-17 -12 -24.5 -6.5t-0.5 25.5l130 400l-347 251q-17 12 -14 20.5t23 8.5h429z" />
<glyph unicode="&#xe007;" d="M407 800l131 353q7 19 17.5 19t17.5 -19l129 -353h421q21 0 24 -8.5t-14 -20.5l-342 -249l130 -401q7 -20 -0.5 -25.5t-24.5 6.5l-343 246l-342 -247q-17 -12 -24.5 -6.5t-0.5 25.5l130 400l-347 251q-17 12 -14 20.5t23 8.5h429zM477 700h-240l197 -142l-74 -226 l193 139l195 -140l-74 229l192 140h-234l-78 211z" />
<glyph unicode="&#xe008;" d="M600 1200q124 0 212 -88t88 -212v-250q0 -46 -31 -98t-69 -52v-75q0 -10 6 -21.5t15 -17.5l358 -230q9 -5 15 -16.5t6 -21.5v-93q0 -10 -7.5 -17.5t-17.5 -7.5h-1150q-10 0 -17.5 7.5t-7.5 17.5v93q0 10 6 21.5t15 16.5l358 230q9 6 15 17.5t6 21.5v75q-38 0 -69 52 t-31 98v250q0 124 88 212t212 88z" />
<glyph unicode="&#xe009;" d="M25 1100h1150q10 0 17.5 -7.5t7.5 -17.5v-1050q0 -10 -7.5 -17.5t-17.5 -7.5h-1150q-10 0 -17.5 7.5t-7.5 17.5v1050q0 10 7.5 17.5t17.5 7.5zM100 1000v-100h100v100h-100zM875 1000h-550q-10 0 -17.5 -7.5t-7.5 -17.5v-350q0 -10 7.5 -17.5t17.5 -7.5h550 q10 0 17.5 7.5t7.5 17.5v350q0 10 -7.5 17.5t-17.5 7.5zM1000 1000v-100h100v100h-100zM100 800v-100h100v100h-100zM1000 800v-100h100v100h-100zM100 600v-100h100v100h-100zM1000 600v-100h100v100h-100zM875 500h-550q-10 0 -17.5 -7.5t-7.5 -17.5v-350q0 -10 7.5 -17.5 t17.5 -7.5h550q10 0 17.5 7.5t7.5 17.5v350q0 10 -7.5 17.5t-17.5 7.5zM100 400v-100h100v100h-100zM1000 400v-100h100v100h-100zM100 200v-100h100v100h-100zM1000 200v-100h100v100h-100z" />
<glyph unicode="&#xe010;" d="M50 1100h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5zM650 1100h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v400 q0 21 14.5 35.5t35.5 14.5zM50 500h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5zM650 500h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400 q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe011;" d="M50 1100h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM450 1100h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200 q0 21 14.5 35.5t35.5 14.5zM850 1100h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM50 700h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200 q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM450 700h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM850 700h200q21 0 35.5 -14.5t14.5 -35.5v-200 q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM50 300h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM450 300h200 q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM850 300h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5 t35.5 14.5z" />
<glyph unicode="&#xe012;" d="M50 1100h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM450 1100h700q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-700q-21 0 -35.5 14.5t-14.5 35.5v200 q0 21 14.5 35.5t35.5 14.5zM50 700h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM450 700h700q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-700 q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM50 300h200q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5zM450 300h700q21 0 35.5 -14.5t14.5 -35.5v-200 q0 -21 -14.5 -35.5t-35.5 -14.5h-700q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe013;" d="M465 477l571 571q8 8 18 8t17 -8l177 -177q8 -7 8 -17t-8 -18l-783 -784q-7 -8 -17.5 -8t-17.5 8l-384 384q-8 8 -8 18t8 17l177 177q7 8 17 8t18 -8l171 -171q7 -7 18 -7t18 7z" />
<glyph unicode="&#xe014;" d="M904 1083l178 -179q8 -8 8 -18.5t-8 -17.5l-267 -268l267 -268q8 -7 8 -17.5t-8 -18.5l-178 -178q-8 -8 -18.5 -8t-17.5 8l-268 267l-268 -267q-7 -8 -17.5 -8t-18.5 8l-178 178q-8 8 -8 18.5t8 17.5l267 268l-267 268q-8 7 -8 17.5t8 18.5l178 178q8 8 18.5 8t17.5 -8 l268 -267l268 268q7 7 17.5 7t18.5 -7z" />
<glyph unicode="&#xe015;" d="M507 1177q98 0 187.5 -38.5t154.5 -103.5t103.5 -154.5t38.5 -187.5q0 -141 -78 -262l300 -299q8 -8 8 -18.5t-8 -18.5l-109 -108q-7 -8 -17.5 -8t-18.5 8l-300 299q-119 -77 -261 -77q-98 0 -188 38.5t-154.5 103t-103 154.5t-38.5 188t38.5 187.5t103 154.5 t154.5 103.5t188 38.5zM506.5 1023q-89.5 0 -165.5 -44t-120 -120.5t-44 -166t44 -165.5t120 -120t165.5 -44t166 44t120.5 120t44 165.5t-44 166t-120.5 120.5t-166 44zM425 900h150q10 0 17.5 -7.5t7.5 -17.5v-75h75q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5 t-17.5 -7.5h-75v-75q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v75h-75q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5h75v75q0 10 7.5 17.5t17.5 7.5z" />
<glyph unicode="&#xe016;" d="M507 1177q98 0 187.5 -38.5t154.5 -103.5t103.5 -154.5t38.5 -187.5q0 -141 -78 -262l300 -299q8 -8 8 -18.5t-8 -18.5l-109 -108q-7 -8 -17.5 -8t-18.5 8l-300 299q-119 -77 -261 -77q-98 0 -188 38.5t-154.5 103t-103 154.5t-38.5 188t38.5 187.5t103 154.5 t154.5 103.5t188 38.5zM506.5 1023q-89.5 0 -165.5 -44t-120 -120.5t-44 -166t44 -165.5t120 -120t165.5 -44t166 44t120.5 120t44 165.5t-44 166t-120.5 120.5t-166 44zM325 800h350q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-350q-10 0 -17.5 7.5 t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5z" />
<glyph unicode="&#xe017;" d="M550 1200h100q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5zM800 975v166q167 -62 272 -209.5t105 -331.5q0 -117 -45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5 t-184.5 123t-123 184.5t-45.5 224q0 184 105 331.5t272 209.5v-166q-103 -55 -165 -155t-62 -220q0 -116 57 -214.5t155.5 -155.5t214.5 -57t214.5 57t155.5 155.5t57 214.5q0 120 -62 220t-165 155z" />
<glyph unicode="&#xe018;" d="M1025 1200h150q10 0 17.5 -7.5t7.5 -17.5v-1150q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v1150q0 10 7.5 17.5t17.5 7.5zM725 800h150q10 0 17.5 -7.5t7.5 -17.5v-750q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v750 q0 10 7.5 17.5t17.5 7.5zM425 500h150q10 0 17.5 -7.5t7.5 -17.5v-450q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v450q0 10 7.5 17.5t17.5 7.5zM125 300h150q10 0 17.5 -7.5t7.5 -17.5v-250q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5 v250q0 10 7.5 17.5t17.5 7.5z" />
<glyph unicode="&#xe019;" d="M600 1174q33 0 74 -5l38 -152l5 -1q49 -14 94 -39l5 -2l134 80q61 -48 104 -105l-80 -134l3 -5q25 -44 39 -93l1 -6l152 -38q5 -43 5 -73q0 -34 -5 -74l-152 -38l-1 -6q-15 -49 -39 -93l-3 -5l80 -134q-48 -61 -104 -105l-134 81l-5 -3q-44 -25 -94 -39l-5 -2l-38 -151 q-43 -5 -74 -5q-33 0 -74 5l-38 151l-5 2q-49 14 -94 39l-5 3l-134 -81q-60 48 -104 105l80 134l-3 5q-25 45 -38 93l-2 6l-151 38q-6 42 -6 74q0 33 6 73l151 38l2 6q13 48 38 93l3 5l-80 134q47 61 105 105l133 -80l5 2q45 25 94 39l5 1l38 152q43 5 74 5zM600 815 q-89 0 -152 -63t-63 -151.5t63 -151.5t152 -63t152 63t63 151.5t-63 151.5t-152 63z" />
<glyph unicode="&#xe020;" d="M500 1300h300q41 0 70.5 -29.5t29.5 -70.5v-100h275q10 0 17.5 -7.5t7.5 -17.5v-75h-1100v75q0 10 7.5 17.5t17.5 7.5h275v100q0 41 29.5 70.5t70.5 29.5zM500 1200v-100h300v100h-300zM1100 900v-800q0 -41 -29.5 -70.5t-70.5 -29.5h-700q-41 0 -70.5 29.5t-29.5 70.5 v800h900zM300 800v-700h100v700h-100zM500 800v-700h100v700h-100zM700 800v-700h100v700h-100zM900 800v-700h100v700h-100z" />
<glyph unicode="&#xe021;" d="M18 618l620 608q8 7 18.5 7t17.5 -7l608 -608q8 -8 5.5 -13t-12.5 -5h-175v-575q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v375h-300v-375q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v575h-175q-10 0 -12.5 5t5.5 13z" />
<glyph unicode="&#xe022;" d="M600 1200v-400q0 -41 29.5 -70.5t70.5 -29.5h300v-650q0 -21 -14.5 -35.5t-35.5 -14.5h-800q-21 0 -35.5 14.5t-14.5 35.5v1100q0 21 14.5 35.5t35.5 14.5h450zM1000 800h-250q-21 0 -35.5 14.5t-14.5 35.5v250z" />
<glyph unicode="&#xe023;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM600 1027q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5t57 -214.5 t155.5 -155.5t214.5 -57t214.5 57t155.5 155.5t57 214.5t-57 214.5t-155.5 155.5t-214.5 57zM525 900h50q10 0 17.5 -7.5t7.5 -17.5v-275h175q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v350q0 10 7.5 17.5t17.5 7.5z" />
<glyph unicode="&#xe024;" d="M1300 0h-538l-41 400h-242l-41 -400h-538l431 1200h209l-21 -300h162l-20 300h208zM515 800l-27 -300h224l-27 300h-170z" />
<glyph unicode="&#xe025;" d="M550 1200h200q21 0 35.5 -14.5t14.5 -35.5v-450h191q20 0 25.5 -11.5t-7.5 -27.5l-327 -400q-13 -16 -32 -16t-32 16l-327 400q-13 16 -7.5 27.5t25.5 11.5h191v450q0 21 14.5 35.5t35.5 14.5zM1125 400h50q10 0 17.5 -7.5t7.5 -17.5v-350q0 -10 -7.5 -17.5t-17.5 -7.5 h-1050q-10 0 -17.5 7.5t-7.5 17.5v350q0 10 7.5 17.5t17.5 7.5h50q10 0 17.5 -7.5t7.5 -17.5v-175h900v175q0 10 7.5 17.5t17.5 7.5z" />
<glyph unicode="&#xe026;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM600 1027q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5t57 -214.5 t155.5 -155.5t214.5 -57t214.5 57t155.5 155.5t57 214.5t-57 214.5t-155.5 155.5t-214.5 57zM525 900h150q10 0 17.5 -7.5t7.5 -17.5v-275h137q21 0 26 -11.5t-8 -27.5l-223 -275q-13 -16 -32 -16t-32 16l-223 275q-13 16 -8 27.5t26 11.5h137v275q0 10 7.5 17.5t17.5 7.5z " />
<glyph unicode="&#xe027;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM600 1027q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5t57 -214.5 t155.5 -155.5t214.5 -57t214.5 57t155.5 155.5t57 214.5t-57 214.5t-155.5 155.5t-214.5 57zM632 914l223 -275q13 -16 8 -27.5t-26 -11.5h-137v-275q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v275h-137q-21 0 -26 11.5t8 27.5l223 275q13 16 32 16 t32 -16z" />
<glyph unicode="&#xe028;" d="M225 1200h750q10 0 19.5 -7t12.5 -17l186 -652q7 -24 7 -49v-425q0 -12 -4 -27t-9 -17q-12 -6 -37 -6h-1100q-12 0 -27 4t-17 8q-6 13 -6 38l1 425q0 25 7 49l185 652q3 10 12.5 17t19.5 7zM878 1000h-556q-10 0 -19 -7t-11 -18l-87 -450q-2 -11 4 -18t16 -7h150 q10 0 19.5 -7t11.5 -17l38 -152q2 -10 11.5 -17t19.5 -7h250q10 0 19.5 7t11.5 17l38 152q2 10 11.5 17t19.5 7h150q10 0 16 7t4 18l-87 450q-2 11 -11 18t-19 7z" />
<glyph unicode="&#xe029;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM600 1027q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5t57 -214.5 t155.5 -155.5t214.5 -57t214.5 57t155.5 155.5t57 214.5t-57 214.5t-155.5 155.5t-214.5 57zM540 820l253 -190q17 -12 17 -30t-17 -30l-253 -190q-16 -12 -28 -6.5t-12 26.5v400q0 21 12 26.5t28 -6.5z" />
<glyph unicode="&#xe030;" d="M947 1060l135 135q7 7 12.5 5t5.5 -13v-362q0 -10 -7.5 -17.5t-17.5 -7.5h-362q-11 0 -13 5.5t5 12.5l133 133q-109 76 -238 76q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5t57 -214.5t155.5 -155.5t214.5 -57t214.5 57t155.5 155.5t57 214.5h150q0 -117 -45.5 -224 t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5q192 0 347 -117z" />
<glyph unicode="&#xe031;" d="M947 1060l135 135q7 7 12.5 5t5.5 -13v-361q0 -11 -7.5 -18.5t-18.5 -7.5h-361q-11 0 -13 5.5t5 12.5l134 134q-110 75 -239 75q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5h-150q0 117 45.5 224t123 184.5t184.5 123t224 45.5q192 0 347 -117zM1027 600h150 q0 -117 -45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5q-192 0 -348 118l-134 -134q-7 -8 -12.5 -5.5t-5.5 12.5v360q0 11 7.5 18.5t18.5 7.5h360q10 0 12.5 -5.5t-5.5 -12.5l-133 -133q110 -76 240 -76q116 0 214.5 57t155.5 155.5t57 214.5z" />
<glyph unicode="&#xe032;" d="M125 1200h1050q10 0 17.5 -7.5t7.5 -17.5v-1150q0 -10 -7.5 -17.5t-17.5 -7.5h-1050q-10 0 -17.5 7.5t-7.5 17.5v1150q0 10 7.5 17.5t17.5 7.5zM1075 1000h-850q-10 0 -17.5 -7.5t-7.5 -17.5v-850q0 -10 7.5 -17.5t17.5 -7.5h850q10 0 17.5 7.5t7.5 17.5v850 q0 10 -7.5 17.5t-17.5 7.5zM325 900h50q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-50q-10 0 -17.5 7.5t-7.5 17.5v50q0 10 7.5 17.5t17.5 7.5zM525 900h450q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-450q-10 0 -17.5 7.5t-7.5 17.5v50 q0 10 7.5 17.5t17.5 7.5zM325 700h50q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-50q-10 0 -17.5 7.5t-7.5 17.5v50q0 10 7.5 17.5t17.5 7.5zM525 700h450q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-450q-10 0 -17.5 7.5t-7.5 17.5v50 q0 10 7.5 17.5t17.5 7.5zM325 500h50q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-50q-10 0 -17.5 7.5t-7.5 17.5v50q0 10 7.5 17.5t17.5 7.5zM525 500h450q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-450q-10 0 -17.5 7.5t-7.5 17.5v50 q0 10 7.5 17.5t17.5 7.5zM325 300h50q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-50q-10 0 -17.5 7.5t-7.5 17.5v50q0 10 7.5 17.5t17.5 7.5zM525 300h450q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-450q-10 0 -17.5 7.5t-7.5 17.5v50 q0 10 7.5 17.5t17.5 7.5z" />
<glyph unicode="&#xe033;" d="M900 800v200q0 83 -58.5 141.5t-141.5 58.5h-300q-82 0 -141 -59t-59 -141v-200h-100q-41 0 -70.5 -29.5t-29.5 -70.5v-600q0 -41 29.5 -70.5t70.5 -29.5h900q41 0 70.5 29.5t29.5 70.5v600q0 41 -29.5 70.5t-70.5 29.5h-100zM400 800v150q0 21 15 35.5t35 14.5h200 q20 0 35 -14.5t15 -35.5v-150h-300z" />
<glyph unicode="&#xe034;" d="M125 1100h50q10 0 17.5 -7.5t7.5 -17.5v-1075h-100v1075q0 10 7.5 17.5t17.5 7.5zM1075 1052q4 0 9 -2q16 -6 16 -23v-421q0 -6 -3 -12q-33 -59 -66.5 -99t-65.5 -58t-56.5 -24.5t-52.5 -6.5q-26 0 -57.5 6.5t-52.5 13.5t-60 21q-41 15 -63 22.5t-57.5 15t-65.5 7.5 q-85 0 -160 -57q-7 -5 -15 -5q-6 0 -11 3q-14 7 -14 22v438q22 55 82 98.5t119 46.5q23 2 43 0.5t43 -7t32.5 -8.5t38 -13t32.5 -11q41 -14 63.5 -21t57 -14t63.5 -7q103 0 183 87q7 8 18 8z" />
<glyph unicode="&#xe035;" d="M600 1175q116 0 227 -49.5t192.5 -131t131 -192.5t49.5 -227v-300q0 -10 -7.5 -17.5t-17.5 -7.5h-50q-10 0 -17.5 7.5t-7.5 17.5v300q0 127 -70.5 231.5t-184.5 161.5t-245 57t-245 -57t-184.5 -161.5t-70.5 -231.5v-300q0 -10 -7.5 -17.5t-17.5 -7.5h-50 q-10 0 -17.5 7.5t-7.5 17.5v300q0 116 49.5 227t131 192.5t192.5 131t227 49.5zM220 500h160q8 0 14 -6t6 -14v-460q0 -8 -6 -14t-14 -6h-160q-8 0 -14 6t-6 14v460q0 8 6 14t14 6zM820 500h160q8 0 14 -6t6 -14v-460q0 -8 -6 -14t-14 -6h-160q-8 0 -14 6t-6 14v460 q0 8 6 14t14 6z" />
<glyph unicode="&#xe036;" d="M321 814l258 172q9 6 15 2.5t6 -13.5v-750q0 -10 -6 -13.5t-15 2.5l-258 172q-21 14 -46 14h-250q-10 0 -17.5 7.5t-7.5 17.5v350q0 10 7.5 17.5t17.5 7.5h250q25 0 46 14zM900 668l120 120q7 7 17 7t17 -7l34 -34q7 -7 7 -17t-7 -17l-120 -120l120 -120q7 -7 7 -17 t-7 -17l-34 -34q-7 -7 -17 -7t-17 7l-120 119l-120 -119q-7 -7 -17 -7t-17 7l-34 34q-7 7 -7 17t7 17l119 120l-119 120q-7 7 -7 17t7 17l34 34q7 8 17 8t17 -8z" />
<glyph unicode="&#xe037;" d="M321 814l258 172q9 6 15 2.5t6 -13.5v-750q0 -10 -6 -13.5t-15 2.5l-258 172q-21 14 -46 14h-250q-10 0 -17.5 7.5t-7.5 17.5v350q0 10 7.5 17.5t17.5 7.5h250q25 0 46 14zM766 900h4q10 -1 16 -10q96 -129 96 -290q0 -154 -90 -281q-6 -9 -17 -10l-3 -1q-9 0 -16 6 l-29 23q-7 7 -8.5 16.5t4.5 17.5q72 103 72 229q0 132 -78 238q-6 8 -4.5 18t9.5 17l29 22q7 5 15 5z" />
<glyph unicode="&#xe038;" d="M967 1004h3q11 -1 17 -10q135 -179 135 -396q0 -105 -34 -206.5t-98 -185.5q-7 -9 -17 -10h-3q-9 0 -16 6l-42 34q-8 6 -9 16t5 18q111 150 111 328q0 90 -29.5 176t-84.5 157q-6 9 -5 19t10 16l42 33q7 5 15 5zM321 814l258 172q9 6 15 2.5t6 -13.5v-750q0 -10 -6 -13.5 t-15 2.5l-258 172q-21 14 -46 14h-250q-10 0 -17.5 7.5t-7.5 17.5v350q0 10 7.5 17.5t17.5 7.5h250q25 0 46 14zM766 900h4q10 -1 16 -10q96 -129 96 -290q0 -154 -90 -281q-6 -9 -17 -10l-3 -1q-9 0 -16 6l-29 23q-7 7 -8.5 16.5t4.5 17.5q72 103 72 229q0 132 -78 238 q-6 8 -4.5 18.5t9.5 16.5l29 22q7 5 15 5z" />
<glyph unicode="&#xe039;" d="M500 900h100v-100h-100v-100h-400v-100h-100v600h500v-300zM1200 700h-200v-100h200v-200h-300v300h-200v300h-100v200h600v-500zM100 1100v-300h300v300h-300zM800 1100v-300h300v300h-300zM300 900h-100v100h100v-100zM1000 900h-100v100h100v-100zM300 500h200v-500 h-500v500h200v100h100v-100zM800 300h200v-100h-100v-100h-200v100h-100v100h100v200h-200v100h300v-300zM100 400v-300h300v300h-300zM300 200h-100v100h100v-100zM1200 200h-100v100h100v-100zM700 0h-100v100h100v-100zM1200 0h-300v100h300v-100z" />
<glyph unicode="&#xe040;" d="M100 200h-100v1000h100v-1000zM300 200h-100v1000h100v-1000zM700 200h-200v1000h200v-1000zM900 200h-100v1000h100v-1000zM1200 200h-200v1000h200v-1000zM400 0h-300v100h300v-100zM600 0h-100v91h100v-91zM800 0h-100v91h100v-91zM1100 0h-200v91h200v-91z" />
<glyph unicode="&#xe041;" d="M500 1200l682 -682q8 -8 8 -18t-8 -18l-464 -464q-8 -8 -18 -8t-18 8l-682 682l1 475q0 10 7.5 17.5t17.5 7.5h474zM319.5 1024.5q-29.5 29.5 -71 29.5t-71 -29.5t-29.5 -71.5t29.5 -71.5t71 -29.5t71 29.5t29.5 71.5t-29.5 71.5z" />
<glyph unicode="&#xe042;" d="M500 1200l682 -682q8 -8 8 -18t-8 -18l-464 -464q-8 -8 -18 -8t-18 8l-682 682l1 475q0 10 7.5 17.5t17.5 7.5h474zM800 1200l682 -682q8 -8 8 -18t-8 -18l-464 -464q-8 -8 -18 -8t-18 8l-56 56l424 426l-700 700h150zM319.5 1024.5q-29.5 29.5 -71 29.5t-71 -29.5 t-29.5 -71.5t29.5 -71.5t71 -29.5t71 29.5t29.5 71.5t-29.5 71.5z" />
<glyph unicode="&#xe043;" d="M300 1200h825q75 0 75 -75v-900q0 -25 -18 -43l-64 -64q-8 -8 -13 -5.5t-5 12.5v950q0 10 -7.5 17.5t-17.5 7.5h-700q-25 0 -43 -18l-64 -64q-8 -8 -5.5 -13t12.5 -5h700q10 0 17.5 -7.5t7.5 -17.5v-950q0 -10 -7.5 -17.5t-17.5 -7.5h-850q-10 0 -17.5 7.5t-7.5 17.5v975 q0 25 18 43l139 139q18 18 43 18z" />
<glyph unicode="&#xe044;" d="M250 1200h800q21 0 35.5 -14.5t14.5 -35.5v-1150l-450 444l-450 -445v1151q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe045;" d="M822 1200h-444q-11 0 -19 -7.5t-9 -17.5l-78 -301q-7 -24 7 -45l57 -108q6 -9 17.5 -15t21.5 -6h450q10 0 21.5 6t17.5 15l62 108q14 21 7 45l-83 301q-1 10 -9 17.5t-19 7.5zM1175 800h-150q-10 0 -21 -6.5t-15 -15.5l-78 -156q-4 -9 -15 -15.5t-21 -6.5h-550 q-10 0 -21 6.5t-15 15.5l-78 156q-4 9 -15 15.5t-21 6.5h-150q-10 0 -17.5 -7.5t-7.5 -17.5v-650q0 -10 7.5 -17.5t17.5 -7.5h150q10 0 17.5 7.5t7.5 17.5v150q0 10 7.5 17.5t17.5 7.5h750q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 7.5 -17.5t17.5 -7.5h150q10 0 17.5 7.5 t7.5 17.5v650q0 10 -7.5 17.5t-17.5 7.5zM850 200h-500q-10 0 -19.5 -7t-11.5 -17l-38 -152q-2 -10 3.5 -17t15.5 -7h600q10 0 15.5 7t3.5 17l-38 152q-2 10 -11.5 17t-19.5 7z" />
<glyph unicode="&#xe046;" d="M500 1100h200q56 0 102.5 -20.5t72.5 -50t44 -59t25 -50.5l6 -20h150q41 0 70.5 -29.5t29.5 -70.5v-600q0 -41 -29.5 -70.5t-70.5 -29.5h-1000q-41 0 -70.5 29.5t-29.5 70.5v600q0 41 29.5 70.5t70.5 29.5h150q2 8 6.5 21.5t24 48t45 61t72 48t102.5 21.5zM900 800v-100 h100v100h-100zM600 730q-95 0 -162.5 -67.5t-67.5 -162.5t67.5 -162.5t162.5 -67.5t162.5 67.5t67.5 162.5t-67.5 162.5t-162.5 67.5zM600 603q43 0 73 -30t30 -73t-30 -73t-73 -30t-73 30t-30 73t30 73t73 30z" />
<glyph unicode="&#xe047;" d="M681 1199l385 -998q20 -50 60 -92q18 -19 36.5 -29.5t27.5 -11.5l10 -2v-66h-417v66q53 0 75 43.5t5 88.5l-82 222h-391q-58 -145 -92 -234q-11 -34 -6.5 -57t25.5 -37t46 -20t55 -6v-66h-365v66q56 24 84 52q12 12 25 30.5t20 31.5l7 13l399 1006h93zM416 521h340 l-162 457z" />
<glyph unicode="&#xe048;" d="M753 641q5 -1 14.5 -4.5t36 -15.5t50.5 -26.5t53.5 -40t50.5 -54.5t35.5 -70t14.5 -87q0 -67 -27.5 -125.5t-71.5 -97.5t-98.5 -66.5t-108.5 -40.5t-102 -13h-500v89q41 7 70.5 32.5t29.5 65.5v827q0 24 -0.5 34t-3.5 24t-8.5 19.5t-17 13.5t-28 12.5t-42.5 11.5v71 l471 -1q57 0 115.5 -20.5t108 -57t80.5 -94t31 -124.5q0 -51 -15.5 -96.5t-38 -74.5t-45 -50.5t-38.5 -30.5zM400 700h139q78 0 130.5 48.5t52.5 122.5q0 41 -8.5 70.5t-29.5 55.5t-62.5 39.5t-103.5 13.5h-118v-350zM400 200h216q80 0 121 50.5t41 130.5q0 90 -62.5 154.5 t-156.5 64.5h-159v-400z" />
<glyph unicode="&#xe049;" d="M877 1200l2 -57q-83 -19 -116 -45.5t-40 -66.5l-132 -839q-9 -49 13 -69t96 -26v-97h-500v97q186 16 200 98l173 832q3 17 3 30t-1.5 22.5t-9 17.5t-13.5 12.5t-21.5 10t-26 8.5t-33.5 10q-13 3 -19 5v57h425z" />
<glyph unicode="&#xe050;" d="M1300 900h-50q0 21 -4 37t-9.5 26.5t-18 17.5t-22 11t-28.5 5.5t-31 2t-37 0.5h-200v-850q0 -22 25 -34.5t50 -13.5l25 -2v-100h-400v100q4 0 11 0.5t24 3t30 7t24 15t11 24.5v850h-200q-25 0 -37 -0.5t-31 -2t-28.5 -5.5t-22 -11t-18 -17.5t-9.5 -26.5t-4 -37h-50v300 h1000v-300zM175 1000h-75v-800h75l-125 -167l-125 167h75v800h-75l125 167z" />
<glyph unicode="&#xe051;" d="M1100 900h-50q0 21 -4 37t-9.5 26.5t-18 17.5t-22 11t-28.5 5.5t-31 2t-37 0.5h-200v-650q0 -22 25 -34.5t50 -13.5l25 -2v-100h-400v100q4 0 11 0.5t24 3t30 7t24 15t11 24.5v650h-200q-25 0 -37 -0.5t-31 -2t-28.5 -5.5t-22 -11t-18 -17.5t-9.5 -26.5t-4 -37h-50v300 h1000v-300zM1167 50l-167 -125v75h-800v-75l-167 125l167 125v-75h800v75z" />
<glyph unicode="&#xe052;" d="M50 1100h600q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-600q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 800h1000q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1000q-21 0 -35.5 14.5t-14.5 35.5v100 q0 21 14.5 35.5t35.5 14.5zM50 500h800q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-800q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 200h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1100 q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe053;" d="M250 1100h700q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-700q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 800h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1100q-21 0 -35.5 14.5t-14.5 35.5v100 q0 21 14.5 35.5t35.5 14.5zM250 500h700q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-700q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 200h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1100 q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe054;" d="M500 950v100q0 21 14.5 35.5t35.5 14.5h600q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-600q-21 0 -35.5 14.5t-14.5 35.5zM100 650v100q0 21 14.5 35.5t35.5 14.5h1000q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1000 q-21 0 -35.5 14.5t-14.5 35.5zM300 350v100q0 21 14.5 35.5t35.5 14.5h800q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-800q-21 0 -35.5 14.5t-14.5 35.5zM0 50v100q0 21 14.5 35.5t35.5 14.5h1100q21 0 35.5 -14.5t14.5 -35.5v-100 q0 -21 -14.5 -35.5t-35.5 -14.5h-1100q-21 0 -35.5 14.5t-14.5 35.5z" />
<glyph unicode="&#xe055;" d="M50 1100h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1100q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 800h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1100q-21 0 -35.5 14.5t-14.5 35.5v100 q0 21 14.5 35.5t35.5 14.5zM50 500h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1100q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 200h1100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1100 q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe056;" d="M50 1100h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM350 1100h800q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-800q-21 0 -35.5 14.5t-14.5 35.5v100 q0 21 14.5 35.5t35.5 14.5zM50 800h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM350 800h800q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-800 q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 500h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM350 500h800q21 0 35.5 -14.5t14.5 -35.5v-100 q0 -21 -14.5 -35.5t-35.5 -14.5h-800q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 200h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM350 200h800 q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-800q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe057;" d="M400 0h-100v1100h100v-1100zM550 1100h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM550 800h500q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-500 q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM267 550l-167 -125v75h-200v100h200v75zM550 500h300q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-300q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM550 200h600 q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-600q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe058;" d="M50 1100h100q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM900 0h-100v1100h100v-1100zM50 800h500q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-500 q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM1100 600h200v-100h-200v-75l-167 125l167 125v-75zM50 500h300q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-300q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5zM50 200h600 q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-600q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe059;" d="M75 1000h750q31 0 53 -22t22 -53v-650q0 -31 -22 -53t-53 -22h-750q-31 0 -53 22t-22 53v650q0 31 22 53t53 22zM1200 300l-300 300l300 300v-600z" />
<glyph unicode="&#xe060;" d="M44 1100h1112q18 0 31 -13t13 -31v-1012q0 -18 -13 -31t-31 -13h-1112q-18 0 -31 13t-13 31v1012q0 18 13 31t31 13zM100 1000v-737l247 182l298 -131l-74 156l293 318l236 -288v500h-1000zM342 884q56 0 95 -39t39 -94.5t-39 -95t-95 -39.5t-95 39.5t-39 95t39 94.5 t95 39z" />
<glyph unicode="&#xe062;" d="M648 1169q117 0 216 -60t156.5 -161t57.5 -218q0 -115 -70 -258q-69 -109 -158 -225.5t-143 -179.5l-54 -62q-9 8 -25.5 24.5t-63.5 67.5t-91 103t-98.5 128t-95.5 148q-60 132 -60 249q0 88 34 169.5t91.5 142t137 96.5t166.5 36zM652.5 974q-91.5 0 -156.5 -65 t-65 -157t65 -156.5t156.5 -64.5t156.5 64.5t65 156.5t-65 157t-156.5 65z" />
<glyph unicode="&#xe063;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM600 173v854q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5t57 -214.5 t155.5 -155.5t214.5 -57z" />
<glyph unicode="&#xe064;" d="M554 1295q21 -72 57.5 -143.5t76 -130t83 -118t82.5 -117t70 -116t49.5 -126t18.5 -136.5q0 -71 -25.5 -135t-68.5 -111t-99 -82t-118.5 -54t-125.5 -23q-84 5 -161.5 34t-139.5 78.5t-99 125t-37 164.5q0 69 18 136.5t49.5 126.5t69.5 116.5t81.5 117.5t83.5 119 t76.5 131t58.5 143zM344 710q-23 -33 -43.5 -70.5t-40.5 -102.5t-17 -123q1 -37 14.5 -69.5t30 -52t41 -37t38.5 -24.5t33 -15q21 -7 32 -1t13 22l6 34q2 10 -2.5 22t-13.5 19q-5 4 -14 12t-29.5 40.5t-32.5 73.5q-26 89 6 271q2 11 -6 11q-8 1 -15 -10z" />
<glyph unicode="&#xe065;" d="M1000 1013l108 115q2 1 5 2t13 2t20.5 -1t25 -9.5t28.5 -21.5q22 -22 27 -43t0 -32l-6 -10l-108 -115zM350 1100h400q50 0 105 -13l-187 -187h-368q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5v182l200 200v-332 q0 -165 -93.5 -257.5t-256.5 -92.5h-400q-165 0 -257.5 92.5t-92.5 257.5v400q0 165 92.5 257.5t257.5 92.5zM1009 803l-362 -362l-161 -50l55 170l355 355z" />
<glyph unicode="&#xe066;" d="M350 1100h361q-164 -146 -216 -200h-195q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5l200 153v-103q0 -165 -92.5 -257.5t-257.5 -92.5h-400q-165 0 -257.5 92.5t-92.5 257.5v400q0 165 92.5 257.5t257.5 92.5z M824 1073l339 -301q8 -7 8 -17.5t-8 -17.5l-340 -306q-7 -6 -12.5 -4t-6.5 11v203q-26 1 -54.5 0t-78.5 -7.5t-92 -17.5t-86 -35t-70 -57q10 59 33 108t51.5 81.5t65 58.5t68.5 40.5t67 24.5t56 13.5t40 4.5v210q1 10 6.5 12.5t13.5 -4.5z" />
<glyph unicode="&#xe067;" d="M350 1100h350q60 0 127 -23l-178 -177h-349q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5v69l200 200v-219q0 -165 -92.5 -257.5t-257.5 -92.5h-400q-165 0 -257.5 92.5t-92.5 257.5v400q0 165 92.5 257.5t257.5 92.5z M643 639l395 395q7 7 17.5 7t17.5 -7l101 -101q7 -7 7 -17.5t-7 -17.5l-531 -532q-7 -7 -17.5 -7t-17.5 7l-248 248q-7 7 -7 17.5t7 17.5l101 101q7 7 17.5 7t17.5 -7l111 -111q8 -7 18 -7t18 7z" />
<glyph unicode="&#xe068;" d="M318 918l264 264q8 8 18 8t18 -8l260 -264q7 -8 4.5 -13t-12.5 -5h-170v-200h200v173q0 10 5 12t13 -5l264 -260q8 -7 8 -17.5t-8 -17.5l-264 -265q-8 -7 -13 -5t-5 12v173h-200v-200h170q10 0 12.5 -5t-4.5 -13l-260 -264q-8 -8 -18 -8t-18 8l-264 264q-8 8 -5.5 13 t12.5 5h175v200h-200v-173q0 -10 -5 -12t-13 5l-264 265q-8 7 -8 17.5t8 17.5l264 260q8 7 13 5t5 -12v-173h200v200h-175q-10 0 -12.5 5t5.5 13z" />
<glyph unicode="&#xe069;" d="M250 1100h100q21 0 35.5 -14.5t14.5 -35.5v-438l464 453q15 14 25.5 10t10.5 -25v-1000q0 -21 -10.5 -25t-25.5 10l-464 453v-438q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v1000q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe070;" d="M50 1100h100q21 0 35.5 -14.5t14.5 -35.5v-438l464 453q15 14 25.5 10t10.5 -25v-438l464 453q15 14 25.5 10t10.5 -25v-1000q0 -21 -10.5 -25t-25.5 10l-464 453v-438q0 -21 -10.5 -25t-25.5 10l-464 453v-438q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5 t-14.5 35.5v1000q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe071;" d="M1200 1050v-1000q0 -21 -10.5 -25t-25.5 10l-464 453v-438q0 -21 -10.5 -25t-25.5 10l-492 480q-15 14 -15 35t15 35l492 480q15 14 25.5 10t10.5 -25v-438l464 453q15 14 25.5 10t10.5 -25z" />
<glyph unicode="&#xe072;" d="M243 1074l814 -498q18 -11 18 -26t-18 -26l-814 -498q-18 -11 -30.5 -4t-12.5 28v1000q0 21 12.5 28t30.5 -4z" />
<glyph unicode="&#xe073;" d="M250 1000h200q21 0 35.5 -14.5t14.5 -35.5v-800q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v800q0 21 14.5 35.5t35.5 14.5zM650 1000h200q21 0 35.5 -14.5t14.5 -35.5v-800q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v800 q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe074;" d="M1100 950v-800q0 -21 -14.5 -35.5t-35.5 -14.5h-800q-21 0 -35.5 14.5t-14.5 35.5v800q0 21 14.5 35.5t35.5 14.5h800q21 0 35.5 -14.5t14.5 -35.5z" />
<glyph unicode="&#xe075;" d="M500 612v438q0 21 10.5 25t25.5 -10l492 -480q15 -14 15 -35t-15 -35l-492 -480q-15 -14 -25.5 -10t-10.5 25v438l-464 -453q-15 -14 -25.5 -10t-10.5 25v1000q0 21 10.5 25t25.5 -10z" />
<glyph unicode="&#xe076;" d="M1048 1102l100 1q20 0 35 -14.5t15 -35.5l5 -1000q0 -21 -14.5 -35.5t-35.5 -14.5l-100 -1q-21 0 -35.5 14.5t-14.5 35.5l-2 437l-463 -454q-14 -15 -24.5 -10.5t-10.5 25.5l-2 437l-462 -455q-15 -14 -25.5 -9.5t-10.5 24.5l-5 1000q0 21 10.5 25.5t25.5 -10.5l466 -450 l-2 438q0 20 10.5 24.5t25.5 -9.5l466 -451l-2 438q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe077;" d="M850 1100h100q21 0 35.5 -14.5t14.5 -35.5v-1000q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v438l-464 -453q-15 -14 -25.5 -10t-10.5 25v1000q0 21 10.5 25t25.5 -10l464 -453v438q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe078;" d="M686 1081l501 -540q15 -15 10.5 -26t-26.5 -11h-1042q-22 0 -26.5 11t10.5 26l501 540q15 15 36 15t36 -15zM150 400h1000q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1000q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe079;" d="M885 900l-352 -353l352 -353l-197 -198l-552 552l552 550z" />
<glyph unicode="&#xe080;" d="M1064 547l-551 -551l-198 198l353 353l-353 353l198 198z" />
<glyph unicode="&#xe081;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM650 900h-100q-21 0 -35.5 -14.5t-14.5 -35.5v-150h-150 q-21 0 -35.5 -14.5t-14.5 -35.5v-100q0 -21 14.5 -35.5t35.5 -14.5h150v-150q0 -21 14.5 -35.5t35.5 -14.5h100q21 0 35.5 14.5t14.5 35.5v150h150q21 0 35.5 14.5t14.5 35.5v100q0 21 -14.5 35.5t-35.5 14.5h-150v150q0 21 -14.5 35.5t-35.5 14.5z" />
<glyph unicode="&#xe082;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM850 700h-500q-21 0 -35.5 -14.5t-14.5 -35.5v-100q0 -21 14.5 -35.5 t35.5 -14.5h500q21 0 35.5 14.5t14.5 35.5v100q0 21 -14.5 35.5t-35.5 14.5z" />
<glyph unicode="&#xe083;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM741.5 913q-12.5 0 -21.5 -9l-120 -120l-120 120q-9 9 -21.5 9 t-21.5 -9l-141 -141q-9 -9 -9 -21.5t9 -21.5l120 -120l-120 -120q-9 -9 -9 -21.5t9 -21.5l141 -141q9 -9 21.5 -9t21.5 9l120 120l120 -120q9 -9 21.5 -9t21.5 9l141 141q9 9 9 21.5t-9 21.5l-120 120l120 120q9 9 9 21.5t-9 21.5l-141 141q-9 9 -21.5 9z" />
<glyph unicode="&#xe084;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM546 623l-84 85q-7 7 -17.5 7t-18.5 -7l-139 -139q-7 -8 -7 -18t7 -18 l242 -241q7 -8 17.5 -8t17.5 8l375 375q7 7 7 17.5t-7 18.5l-139 139q-7 7 -17.5 7t-17.5 -7z" />
<glyph unicode="&#xe085;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM588 941q-29 0 -59 -5.5t-63 -20.5t-58 -38.5t-41.5 -63t-16.5 -89.5 q0 -25 20 -25h131q30 -5 35 11q6 20 20.5 28t45.5 8q20 0 31.5 -10.5t11.5 -28.5q0 -23 -7 -34t-26 -18q-1 0 -13.5 -4t-19.5 -7.5t-20 -10.5t-22 -17t-18.5 -24t-15.5 -35t-8 -46q-1 -8 5.5 -16.5t20.5 -8.5h173q7 0 22 8t35 28t37.5 48t29.5 74t12 100q0 47 -17 83 t-42.5 57t-59.5 34.5t-64 18t-59 4.5zM675 400h-150q-10 0 -17.5 -7.5t-7.5 -17.5v-150q0 -10 7.5 -17.5t17.5 -7.5h150q10 0 17.5 7.5t7.5 17.5v150q0 10 -7.5 17.5t-17.5 7.5z" />
<glyph unicode="&#xe086;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM675 1000h-150q-10 0 -17.5 -7.5t-7.5 -17.5v-150q0 -10 7.5 -17.5 t17.5 -7.5h150q10 0 17.5 7.5t7.5 17.5v150q0 10 -7.5 17.5t-17.5 7.5zM675 700h-250q-10 0 -17.5 -7.5t-7.5 -17.5v-50q0 -10 7.5 -17.5t17.5 -7.5h75v-200h-75q-10 0 -17.5 -7.5t-7.5 -17.5v-50q0 -10 7.5 -17.5t17.5 -7.5h350q10 0 17.5 7.5t7.5 17.5v50q0 10 -7.5 17.5 t-17.5 7.5h-75v275q0 10 -7.5 17.5t-17.5 7.5z" />
<glyph unicode="&#xe087;" d="M525 1200h150q10 0 17.5 -7.5t7.5 -17.5v-194q103 -27 178.5 -102.5t102.5 -178.5h194q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-194q-27 -103 -102.5 -178.5t-178.5 -102.5v-194q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v194 q-103 27 -178.5 102.5t-102.5 178.5h-194q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5h194q27 103 102.5 178.5t178.5 102.5v194q0 10 7.5 17.5t17.5 7.5zM700 893v-168q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v168q-68 -23 -119 -74 t-74 -119h168q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-168q23 -68 74 -119t119 -74v168q0 10 7.5 17.5t17.5 7.5h150q10 0 17.5 -7.5t7.5 -17.5v-168q68 23 119 74t74 119h-168q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5h168 q-23 68 -74 119t-119 74z" />
<glyph unicode="&#xe088;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM600 1027q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5t57 -214.5 t155.5 -155.5t214.5 -57t214.5 57t155.5 155.5t57 214.5t-57 214.5t-155.5 155.5t-214.5 57zM759 823l64 -64q7 -7 7 -17.5t-7 -17.5l-124 -124l124 -124q7 -7 7 -17.5t-7 -17.5l-64 -64q-7 -7 -17.5 -7t-17.5 7l-124 124l-124 -124q-7 -7 -17.5 -7t-17.5 7l-64 64 q-7 7 -7 17.5t7 17.5l124 124l-124 124q-7 7 -7 17.5t7 17.5l64 64q7 7 17.5 7t17.5 -7l124 -124l124 124q7 7 17.5 7t17.5 -7z" />
<glyph unicode="&#xe089;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM600 1027q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5t57 -214.5 t155.5 -155.5t214.5 -57t214.5 57t155.5 155.5t57 214.5t-57 214.5t-155.5 155.5t-214.5 57zM782 788l106 -106q7 -7 7 -17.5t-7 -17.5l-320 -321q-8 -7 -18 -7t-18 7l-202 203q-8 7 -8 17.5t8 17.5l106 106q7 8 17.5 8t17.5 -8l79 -79l197 197q7 7 17.5 7t17.5 -7z" />
<glyph unicode="&#xe090;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM600 1027q-116 0 -214.5 -57t-155.5 -155.5t-57 -214.5q0 -120 65 -225 l587 587q-105 65 -225 65zM965 819l-584 -584q104 -62 219 -62q116 0 214.5 57t155.5 155.5t57 214.5q0 115 -62 219z" />
<glyph unicode="&#xe091;" d="M39 582l522 427q16 13 27.5 8t11.5 -26v-291h550q21 0 35.5 -14.5t14.5 -35.5v-200q0 -21 -14.5 -35.5t-35.5 -14.5h-550v-291q0 -21 -11.5 -26t-27.5 8l-522 427q-16 13 -16 32t16 32z" />
<glyph unicode="&#xe092;" d="M639 1009l522 -427q16 -13 16 -32t-16 -32l-522 -427q-16 -13 -27.5 -8t-11.5 26v291h-550q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5h550v291q0 21 11.5 26t27.5 -8z" />
<glyph unicode="&#xe093;" d="M682 1161l427 -522q13 -16 8 -27.5t-26 -11.5h-291v-550q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v550h-291q-21 0 -26 11.5t8 27.5l427 522q13 16 32 16t32 -16z" />
<glyph unicode="&#xe094;" d="M550 1200h200q21 0 35.5 -14.5t14.5 -35.5v-550h291q21 0 26 -11.5t-8 -27.5l-427 -522q-13 -16 -32 -16t-32 16l-427 522q-13 16 -8 27.5t26 11.5h291v550q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe095;" d="M639 1109l522 -427q16 -13 16 -32t-16 -32l-522 -427q-16 -13 -27.5 -8t-11.5 26v291q-94 -2 -182 -20t-170.5 -52t-147 -92.5t-100.5 -135.5q5 105 27 193.5t67.5 167t113 135t167 91.5t225.5 42v262q0 21 11.5 26t27.5 -8z" />
<glyph unicode="&#xe096;" d="M850 1200h300q21 0 35.5 -14.5t14.5 -35.5v-300q0 -21 -10.5 -25t-24.5 10l-94 94l-249 -249q-8 -7 -18 -7t-18 7l-106 106q-7 8 -7 18t7 18l249 249l-94 94q-14 14 -10 24.5t25 10.5zM350 0h-300q-21 0 -35.5 14.5t-14.5 35.5v300q0 21 10.5 25t24.5 -10l94 -94l249 249 q8 7 18 7t18 -7l106 -106q7 -8 7 -18t-7 -18l-249 -249l94 -94q14 -14 10 -24.5t-25 -10.5z" />
<glyph unicode="&#xe097;" d="M1014 1120l106 -106q7 -8 7 -18t-7 -18l-249 -249l94 -94q14 -14 10 -24.5t-25 -10.5h-300q-21 0 -35.5 14.5t-14.5 35.5v300q0 21 10.5 25t24.5 -10l94 -94l249 249q8 7 18 7t18 -7zM250 600h300q21 0 35.5 -14.5t14.5 -35.5v-300q0 -21 -10.5 -25t-24.5 10l-94 94 l-249 -249q-8 -7 -18 -7t-18 7l-106 106q-7 8 -7 18t7 18l249 249l-94 94q-14 14 -10 24.5t25 10.5z" />
<glyph unicode="&#xe101;" d="M600 1177q117 0 224 -45.5t184.5 -123t123 -184.5t45.5 -224t-45.5 -224t-123 -184.5t-184.5 -123t-224 -45.5t-224 45.5t-184.5 123t-123 184.5t-45.5 224t45.5 224t123 184.5t184.5 123t224 45.5zM704 900h-208q-20 0 -32 -14.5t-8 -34.5l58 -302q4 -20 21.5 -34.5 t37.5 -14.5h54q20 0 37.5 14.5t21.5 34.5l58 302q4 20 -8 34.5t-32 14.5zM675 400h-150q-10 0 -17.5 -7.5t-7.5 -17.5v-150q0 -10 7.5 -17.5t17.5 -7.5h150q10 0 17.5 7.5t7.5 17.5v150q0 10 -7.5 17.5t-17.5 7.5z" />
<glyph unicode="&#xe102;" d="M260 1200q9 0 19 -2t15 -4l5 -2q22 -10 44 -23l196 -118q21 -13 36 -24q29 -21 37 -12q11 13 49 35l196 118q22 13 45 23q17 7 38 7q23 0 47 -16.5t37 -33.5l13 -16q14 -21 18 -45l25 -123l8 -44q1 -9 8.5 -14.5t17.5 -5.5h61q10 0 17.5 -7.5t7.5 -17.5v-50 q0 -10 -7.5 -17.5t-17.5 -7.5h-50q-10 0 -17.5 -7.5t-7.5 -17.5v-175h-400v300h-200v-300h-400v175q0 10 -7.5 17.5t-17.5 7.5h-50q-10 0 -17.5 7.5t-7.5 17.5v50q0 10 7.5 17.5t17.5 7.5h61q11 0 18 3t7 8q0 4 9 52l25 128q5 25 19 45q2 3 5 7t13.5 15t21.5 19.5t26.5 15.5 t29.5 7zM915 1079l-166 -162q-7 -7 -5 -12t12 -5h219q10 0 15 7t2 17l-51 149q-3 10 -11 12t-15 -6zM463 917l-177 157q-8 7 -16 5t-11 -12l-51 -143q-3 -10 2 -17t15 -7h231q11 0 12.5 5t-5.5 12zM500 0h-375q-10 0 -17.5 7.5t-7.5 17.5v375h400v-400zM1100 400v-375 q0 -10 -7.5 -17.5t-17.5 -7.5h-375v400h400z" />
<glyph unicode="&#xe103;" d="M1165 1190q8 3 21 -6.5t13 -17.5q-2 -178 -24.5 -323.5t-55.5 -245.5t-87 -174.5t-102.5 -118.5t-118 -68.5t-118.5 -33t-120 -4.5t-105 9.5t-90 16.5q-61 12 -78 11q-4 1 -12.5 0t-34 -14.5t-52.5 -40.5l-153 -153q-26 -24 -37 -14.5t-11 43.5q0 64 42 102q8 8 50.5 45 t66.5 58q19 17 35 47t13 61q-9 55 -10 102.5t7 111t37 130t78 129.5q39 51 80 88t89.5 63.5t94.5 45t113.5 36t129 31t157.5 37t182 47.5zM1116 1098q-8 9 -22.5 -3t-45.5 -50q-38 -47 -119 -103.5t-142 -89.5l-62 -33q-56 -30 -102 -57t-104 -68t-102.5 -80.5t-85.5 -91 t-64 -104.5q-24 -56 -31 -86t2 -32t31.5 17.5t55.5 59.5q25 30 94 75.5t125.5 77.5t147.5 81q70 37 118.5 69t102 79.5t99 111t86.5 148.5q22 50 24 60t-6 19z" />
<glyph unicode="&#xe104;" d="M653 1231q-39 -67 -54.5 -131t-10.5 -114.5t24.5 -96.5t47.5 -80t63.5 -62.5t68.5 -46.5t65 -30q-4 7 -17.5 35t-18.5 39.5t-17 39.5t-17 43t-13 42t-9.5 44.5t-2 42t4 43t13.5 39t23 38.5q96 -42 165 -107.5t105 -138t52 -156t13 -159t-19 -149.5q-13 -55 -44 -106.5 t-68 -87t-78.5 -64.5t-72.5 -45t-53 -22q-72 -22 -127 -11q-31 6 -13 19q6 3 17 7q13 5 32.5 21t41 44t38.5 63.5t21.5 81.5t-6.5 94.5t-50 107t-104 115.5q10 -104 -0.5 -189t-37 -140.5t-65 -93t-84 -52t-93.5 -11t-95 24.5q-80 36 -131.5 114t-53.5 171q-2 23 0 49.5 t4.5 52.5t13.5 56t27.5 60t46 64.5t69.5 68.5q-8 -53 -5 -102.5t17.5 -90t34 -68.5t44.5 -39t49 -2q31 13 38.5 36t-4.5 55t-29 64.5t-36 75t-26 75.5q-15 85 2 161.5t53.5 128.5t85.5 92.5t93.5 61t81.5 25.5z" />
<glyph unicode="&#xe105;" d="M600 1094q82 0 160.5 -22.5t140 -59t116.5 -82.5t94.5 -95t68 -95t42.5 -82.5t14 -57.5t-14 -57.5t-43 -82.5t-68.5 -95t-94.5 -95t-116.5 -82.5t-140 -59t-159.5 -22.5t-159.5 22.5t-140 59t-116.5 82.5t-94.5 95t-68.5 95t-43 82.5t-14 57.5t14 57.5t42.5 82.5t68 95 t94.5 95t116.5 82.5t140 59t160.5 22.5zM888 829q-15 15 -18 12t5 -22q25 -57 25 -119q0 -124 -88 -212t-212 -88t-212 88t-88 212q0 59 23 114q8 19 4.5 22t-17.5 -12q-70 -69 -160 -184q-13 -16 -15 -40.5t9 -42.5q22 -36 47 -71t70 -82t92.5 -81t113 -58.5t133.5 -24.5 t133.5 24t113 58.5t92.5 81.5t70 81.5t47 70.5q11 18 9 42.5t-14 41.5q-90 117 -163 189zM448 727l-35 -36q-15 -15 -19.5 -38.5t4.5 -41.5q37 -68 93 -116q16 -13 38.5 -11t36.5 17l35 34q14 15 12.5 33.5t-16.5 33.5q-44 44 -89 117q-11 18 -28 20t-32 -12z" />
<glyph unicode="&#xe106;" d="M592 0h-148l31 120q-91 20 -175.5 68.5t-143.5 106.5t-103.5 119t-66.5 110t-22 76q0 21 14 57.5t42.5 82.5t68 95t94.5 95t116.5 82.5t140 59t160.5 22.5q61 0 126 -15l32 121h148zM944 770l47 181q108 -85 176.5 -192t68.5 -159q0 -26 -19.5 -71t-59.5 -102t-93 -112 t-129 -104.5t-158 -75.5l46 173q77 49 136 117t97 131q11 18 9 42.5t-14 41.5q-54 70 -107 130zM310 824q-70 -69 -160 -184q-13 -16 -15 -40.5t9 -42.5q18 -30 39 -60t57 -70.5t74 -73t90 -61t105 -41.5l41 154q-107 18 -178.5 101.5t-71.5 193.5q0 59 23 114q8 19 4.5 22 t-17.5 -12zM448 727l-35 -36q-15 -15 -19.5 -38.5t4.5 -41.5q37 -68 93 -116q16 -13 38.5 -11t36.5 17l12 11l22 86l-3 4q-44 44 -89 117q-11 18 -28 20t-32 -12z" />
<glyph unicode="&#xe107;" d="M-90 100l642 1066q20 31 48 28.5t48 -35.5l642 -1056q21 -32 7.5 -67.5t-50.5 -35.5h-1294q-37 0 -50.5 34t7.5 66zM155 200h345v75q0 10 7.5 17.5t17.5 7.5h150q10 0 17.5 -7.5t7.5 -17.5v-75h345l-445 723zM496 700h208q20 0 32 -14.5t8 -34.5l-58 -252 q-4 -20 -21.5 -34.5t-37.5 -14.5h-54q-20 0 -37.5 14.5t-21.5 34.5l-58 252q-4 20 8 34.5t32 14.5z" />
<glyph unicode="&#xe108;" d="M650 1200q62 0 106 -44t44 -106v-339l363 -325q15 -14 26 -38.5t11 -44.5v-41q0 -20 -12 -26.5t-29 5.5l-359 249v-263q100 -93 100 -113v-64q0 -21 -13 -29t-32 1l-205 128l-205 -128q-19 -9 -32 -1t-13 29v64q0 20 100 113v263l-359 -249q-17 -12 -29 -5.5t-12 26.5v41 q0 20 11 44.5t26 38.5l363 325v339q0 62 44 106t106 44z" />
<glyph unicode="&#xe109;" d="M850 1200h100q21 0 35.5 -14.5t14.5 -35.5v-50h50q21 0 35.5 -14.5t14.5 -35.5v-150h-1100v150q0 21 14.5 35.5t35.5 14.5h50v50q0 21 14.5 35.5t35.5 14.5h100q21 0 35.5 -14.5t14.5 -35.5v-50h500v50q0 21 14.5 35.5t35.5 14.5zM1100 800v-750q0 -21 -14.5 -35.5 t-35.5 -14.5h-1000q-21 0 -35.5 14.5t-14.5 35.5v750h1100zM100 600v-100h100v100h-100zM300 600v-100h100v100h-100zM500 600v-100h100v100h-100zM700 600v-100h100v100h-100zM900 600v-100h100v100h-100zM100 400v-100h100v100h-100zM300 400v-100h100v100h-100zM500 400 v-100h100v100h-100zM700 400v-100h100v100h-100zM900 400v-100h100v100h-100zM100 200v-100h100v100h-100zM300 200v-100h100v100h-100zM500 200v-100h100v100h-100zM700 200v-100h100v100h-100zM900 200v-100h100v100h-100z" />
<glyph unicode="&#xe110;" d="M1135 1165l249 -230q15 -14 15 -35t-15 -35l-249 -230q-14 -14 -24.5 -10t-10.5 25v150h-159l-600 -600h-291q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5h209l600 600h241v150q0 21 10.5 25t24.5 -10zM522 819l-141 -141l-122 122h-209q-21 0 -35.5 14.5 t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5h291zM1135 565l249 -230q15 -14 15 -35t-15 -35l-249 -230q-14 -14 -24.5 -10t-10.5 25v150h-241l-181 181l141 141l122 -122h159v150q0 21 10.5 25t24.5 -10z" />
<glyph unicode="&#xe111;" d="M100 1100h1000q41 0 70.5 -29.5t29.5 -70.5v-600q0 -41 -29.5 -70.5t-70.5 -29.5h-596l-304 -300v300h-100q-41 0 -70.5 29.5t-29.5 70.5v600q0 41 29.5 70.5t70.5 29.5z" />
<glyph unicode="&#xe112;" d="M150 1200h200q21 0 35.5 -14.5t14.5 -35.5v-250h-300v250q0 21 14.5 35.5t35.5 14.5zM850 1200h200q21 0 35.5 -14.5t14.5 -35.5v-250h-300v250q0 21 14.5 35.5t35.5 14.5zM1100 800v-300q0 -41 -3 -77.5t-15 -89.5t-32 -96t-58 -89t-89 -77t-129 -51t-174 -20t-174 20 t-129 51t-89 77t-58 89t-32 96t-15 89.5t-3 77.5v300h300v-250v-27v-42.5t1.5 -41t5 -38t10 -35t16.5 -30t25.5 -24.5t35 -19t46.5 -12t60 -4t60 4.5t46.5 12.5t35 19.5t25 25.5t17 30.5t10 35t5 38t2 40.5t-0.5 42v25v250h300z" />
<glyph unicode="&#xe113;" d="M1100 411l-198 -199l-353 353l-353 -353l-197 199l551 551z" />
<glyph unicode="&#xe114;" d="M1101 789l-550 -551l-551 551l198 199l353 -353l353 353z" />
<glyph unicode="&#xe115;" d="M404 1000h746q21 0 35.5 -14.5t14.5 -35.5v-551h150q21 0 25 -10.5t-10 -24.5l-230 -249q-14 -15 -35 -15t-35 15l-230 249q-14 14 -10 24.5t25 10.5h150v401h-381zM135 984l230 -249q14 -14 10 -24.5t-25 -10.5h-150v-400h385l215 -200h-750q-21 0 -35.5 14.5 t-14.5 35.5v550h-150q-21 0 -25 10.5t10 24.5l230 249q14 15 35 15t35 -15z" />
<glyph unicode="&#xe116;" d="M56 1200h94q17 0 31 -11t18 -27l38 -162h896q24 0 39 -18.5t10 -42.5l-100 -475q-5 -21 -27 -42.5t-55 -21.5h-633l48 -200h535q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-50v-50q0 -21 -14.5 -35.5t-35.5 -14.5t-35.5 14.5t-14.5 35.5v50h-300v-50 q0 -21 -14.5 -35.5t-35.5 -14.5t-35.5 14.5t-14.5 35.5v50h-31q-18 0 -32.5 10t-20.5 19l-5 10l-201 961h-54q-20 0 -35 14.5t-15 35.5t15 35.5t35 14.5z" />
<glyph unicode="&#xe117;" d="M1200 1000v-100h-1200v100h200q0 41 29.5 70.5t70.5 29.5h300q41 0 70.5 -29.5t29.5 -70.5h500zM0 800h1200v-800h-1200v800z" />
<glyph unicode="&#xe118;" d="M200 800l-200 -400v600h200q0 41 29.5 70.5t70.5 29.5h300q42 0 71 -29.5t29 -70.5h500v-200h-1000zM1500 700l-300 -700h-1200l300 700h1200z" />
<glyph unicode="&#xe119;" d="M635 1184l230 -249q14 -14 10 -24.5t-25 -10.5h-150v-601h150q21 0 25 -10.5t-10 -24.5l-230 -249q-14 -15 -35 -15t-35 15l-230 249q-14 14 -10 24.5t25 10.5h150v601h-150q-21 0 -25 10.5t10 24.5l230 249q14 15 35 15t35 -15z" />
<glyph unicode="&#xe120;" d="M936 864l249 -229q14 -15 14 -35.5t-14 -35.5l-249 -229q-15 -15 -25.5 -10.5t-10.5 24.5v151h-600v-151q0 -20 -10.5 -24.5t-25.5 10.5l-249 229q-14 15 -14 35.5t14 35.5l249 229q15 15 25.5 10.5t10.5 -25.5v-149h600v149q0 21 10.5 25.5t25.5 -10.5z" />
<glyph unicode="&#xe121;" d="M1169 400l-172 732q-5 23 -23 45.5t-38 22.5h-672q-20 0 -38 -20t-23 -41l-172 -739h1138zM1100 300h-1000q-41 0 -70.5 -29.5t-29.5 -70.5v-100q0 -41 29.5 -70.5t70.5 -29.5h1000q41 0 70.5 29.5t29.5 70.5v100q0 41 -29.5 70.5t-70.5 29.5zM800 100v100h100v-100h-100 zM1000 100v100h100v-100h-100z" />
<glyph unicode="&#xe122;" d="M1150 1100q21 0 35.5 -14.5t14.5 -35.5v-850q0 -21 -14.5 -35.5t-35.5 -14.5t-35.5 14.5t-14.5 35.5v850q0 21 14.5 35.5t35.5 14.5zM1000 200l-675 200h-38l47 -276q3 -16 -5.5 -20t-29.5 -4h-7h-84q-20 0 -34.5 14t-18.5 35q-55 337 -55 351v250v6q0 16 1 23.5t6.5 14 t17.5 6.5h200l675 250v-850zM0 750v-250q-4 0 -11 0.5t-24 6t-30 15t-24 30t-11 48.5v50q0 26 10.5 46t25 30t29 16t25.5 7z" />
<glyph unicode="&#xe123;" d="M553 1200h94q20 0 29 -10.5t3 -29.5l-18 -37q83 -19 144 -82.5t76 -140.5l63 -327l118 -173h17q19 0 33 -14.5t14 -35t-13 -40.5t-31 -27q-8 -4 -23 -9.5t-65 -19.5t-103 -25t-132.5 -20t-158.5 -9q-57 0 -115 5t-104 12t-88.5 15.5t-73.5 17.5t-54.5 16t-35.5 12l-11 4 q-18 8 -31 28t-13 40.5t14 35t33 14.5h17l118 173l63 327q15 77 76 140t144 83l-18 32q-6 19 3.5 32t28.5 13zM498 110q50 -6 102 -6q53 0 102 6q-12 -49 -39.5 -79.5t-62.5 -30.5t-63 30.5t-39 79.5z" />
<glyph unicode="&#xe124;" d="M800 946l224 78l-78 -224l234 -45l-180 -155l180 -155l-234 -45l78 -224l-224 78l-45 -234l-155 180l-155 -180l-45 234l-224 -78l78 224l-234 45l180 155l-180 155l234 45l-78 224l224 -78l45 234l155 -180l155 180z" />
<glyph unicode="&#xe125;" d="M650 1200h50q40 0 70 -40.5t30 -84.5v-150l-28 -125h328q40 0 70 -40.5t30 -84.5v-100q0 -45 -29 -74l-238 -344q-16 -24 -38 -40.5t-45 -16.5h-250q-7 0 -42 25t-66 50l-31 25h-61q-45 0 -72.5 18t-27.5 57v400q0 36 20 63l145 196l96 198q13 28 37.5 48t51.5 20z M650 1100l-100 -212l-150 -213v-375h100l136 -100h214l250 375v125h-450l50 225v175h-50zM50 800h100q21 0 35.5 -14.5t14.5 -35.5v-500q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v500q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe126;" d="M600 1100h250q23 0 45 -16.5t38 -40.5l238 -344q29 -29 29 -74v-100q0 -44 -30 -84.5t-70 -40.5h-328q28 -118 28 -125v-150q0 -44 -30 -84.5t-70 -40.5h-50q-27 0 -51.5 20t-37.5 48l-96 198l-145 196q-20 27 -20 63v400q0 39 27.5 57t72.5 18h61q124 100 139 100z M50 1000h100q21 0 35.5 -14.5t14.5 -35.5v-500q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v500q0 21 14.5 35.5t35.5 14.5zM636 1000l-136 -100h-100v-375l150 -213l100 -212h50v175l-50 225h450v125l-250 375h-214z" />
<glyph unicode="&#xe127;" d="M356 873l363 230q31 16 53 -6l110 -112q13 -13 13.5 -32t-11.5 -34l-84 -121h302q84 0 138 -38t54 -110t-55 -111t-139 -39h-106l-131 -339q-6 -21 -19.5 -41t-28.5 -20h-342q-7 0 -90 81t-83 94v525q0 17 14 35.5t28 28.5zM400 792v-503l100 -89h293l131 339 q6 21 19.5 41t28.5 20h203q21 0 30.5 25t0.5 50t-31 25h-456h-7h-6h-5.5t-6 0.5t-5 1.5t-5 2t-4 2.5t-4 4t-2.5 4.5q-12 25 5 47l146 183l-86 83zM50 800h100q21 0 35.5 -14.5t14.5 -35.5v-500q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v500 q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe128;" d="M475 1103l366 -230q2 -1 6 -3.5t14 -10.5t18 -16.5t14.5 -20t6.5 -22.5v-525q0 -13 -86 -94t-93 -81h-342q-15 0 -28.5 20t-19.5 41l-131 339h-106q-85 0 -139.5 39t-54.5 111t54 110t138 38h302l-85 121q-11 15 -10.5 34t13.5 32l110 112q22 22 53 6zM370 945l146 -183 q17 -22 5 -47q-2 -2 -3.5 -4.5t-4 -4t-4 -2.5t-5 -2t-5 -1.5t-6 -0.5h-6h-6.5h-6h-475v-100h221q15 0 29 -20t20 -41l130 -339h294l106 89v503l-342 236zM1050 800h100q21 0 35.5 -14.5t14.5 -35.5v-500q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5 v500q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe129;" d="M550 1294q72 0 111 -55t39 -139v-106l339 -131q21 -6 41 -19.5t20 -28.5v-342q0 -7 -81 -90t-94 -83h-525q-17 0 -35.5 14t-28.5 28l-9 14l-230 363q-16 31 6 53l112 110q13 13 32 13.5t34 -11.5l121 -84v302q0 84 38 138t110 54zM600 972v203q0 21 -25 30.5t-50 0.5 t-25 -31v-456v-7v-6v-5.5t-0.5 -6t-1.5 -5t-2 -5t-2.5 -4t-4 -4t-4.5 -2.5q-25 -12 -47 5l-183 146l-83 -86l236 -339h503l89 100v293l-339 131q-21 6 -41 19.5t-20 28.5zM450 200h500q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-500 q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe130;" d="M350 1100h500q21 0 35.5 14.5t14.5 35.5v100q0 21 -14.5 35.5t-35.5 14.5h-500q-21 0 -35.5 -14.5t-14.5 -35.5v-100q0 -21 14.5 -35.5t35.5 -14.5zM600 306v-106q0 -84 -39 -139t-111 -55t-110 54t-38 138v302l-121 -84q-15 -12 -34 -11.5t-32 13.5l-112 110 q-22 22 -6 53l230 363q1 2 3.5 6t10.5 13.5t16.5 17t20 13.5t22.5 6h525q13 0 94 -83t81 -90v-342q0 -15 -20 -28.5t-41 -19.5zM308 900l-236 -339l83 -86l183 146q22 17 47 5q2 -1 4.5 -2.5t4 -4t2.5 -4t2 -5t1.5 -5t0.5 -6v-5.5v-6v-7v-456q0 -22 25 -31t50 0.5t25 30.5 v203q0 15 20 28.5t41 19.5l339 131v293l-89 100h-503z" />
<glyph unicode="&#xe131;" d="M600 1178q118 0 225 -45.5t184.5 -123t123 -184.5t45.5 -225t-45.5 -225t-123 -184.5t-184.5 -123t-225 -45.5t-225 45.5t-184.5 123t-123 184.5t-45.5 225t45.5 225t123 184.5t184.5 123t225 45.5zM914 632l-275 223q-16 13 -27.5 8t-11.5 -26v-137h-275 q-10 0 -17.5 -7.5t-7.5 -17.5v-150q0 -10 7.5 -17.5t17.5 -7.5h275v-137q0 -21 11.5 -26t27.5 8l275 223q16 13 16 32t-16 32z" />
<glyph unicode="&#xe132;" d="M600 1178q118 0 225 -45.5t184.5 -123t123 -184.5t45.5 -225t-45.5 -225t-123 -184.5t-184.5 -123t-225 -45.5t-225 45.5t-184.5 123t-123 184.5t-45.5 225t45.5 225t123 184.5t184.5 123t225 45.5zM561 855l-275 -223q-16 -13 -16 -32t16 -32l275 -223q16 -13 27.5 -8 t11.5 26v137h275q10 0 17.5 7.5t7.5 17.5v150q0 10 -7.5 17.5t-17.5 7.5h-275v137q0 21 -11.5 26t-27.5 -8z" />
<glyph unicode="&#xe133;" d="M600 1178q118 0 225 -45.5t184.5 -123t123 -184.5t45.5 -225t-45.5 -225t-123 -184.5t-184.5 -123t-225 -45.5t-225 45.5t-184.5 123t-123 184.5t-45.5 225t45.5 225t123 184.5t184.5 123t225 45.5zM855 639l-223 275q-13 16 -32 16t-32 -16l-223 -275q-13 -16 -8 -27.5 t26 -11.5h137v-275q0 -10 7.5 -17.5t17.5 -7.5h150q10 0 17.5 7.5t7.5 17.5v275h137q21 0 26 11.5t-8 27.5z" />
<glyph unicode="&#xe134;" d="M600 1178q118 0 225 -45.5t184.5 -123t123 -184.5t45.5 -225t-45.5 -225t-123 -184.5t-184.5 -123t-225 -45.5t-225 45.5t-184.5 123t-123 184.5t-45.5 225t45.5 225t123 184.5t184.5 123t225 45.5zM675 900h-150q-10 0 -17.5 -7.5t-7.5 -17.5v-275h-137q-21 0 -26 -11.5 t8 -27.5l223 -275q13 -16 32 -16t32 16l223 275q13 16 8 27.5t-26 11.5h-137v275q0 10 -7.5 17.5t-17.5 7.5z" />
<glyph unicode="&#xe135;" d="M600 1176q116 0 222.5 -46t184 -123.5t123.5 -184t46 -222.5t-46 -222.5t-123.5 -184t-184 -123.5t-222.5 -46t-222.5 46t-184 123.5t-123.5 184t-46 222.5t46 222.5t123.5 184t184 123.5t222.5 46zM627 1101q-15 -12 -36.5 -20.5t-35.5 -12t-43 -8t-39 -6.5 q-15 -3 -45.5 0t-45.5 -2q-20 -7 -51.5 -26.5t-34.5 -34.5q-3 -11 6.5 -22.5t8.5 -18.5q-3 -34 -27.5 -91t-29.5 -79q-9 -34 5 -93t8 -87q0 -9 17 -44.5t16 -59.5q12 0 23 -5t23.5 -15t19.5 -14q16 -8 33 -15t40.5 -15t34.5 -12q21 -9 52.5 -32t60 -38t57.5 -11 q7 -15 -3 -34t-22.5 -40t-9.5 -38q13 -21 23 -34.5t27.5 -27.5t36.5 -18q0 -7 -3.5 -16t-3.5 -14t5 -17q104 -2 221 112q30 29 46.5 47t34.5 49t21 63q-13 8 -37 8.5t-36 7.5q-15 7 -49.5 15t-51.5 19q-18 0 -41 -0.5t-43 -1.5t-42 -6.5t-38 -16.5q-51 -35 -66 -12 q-4 1 -3.5 25.5t0.5 25.5q-6 13 -26.5 17.5t-24.5 6.5q1 15 -0.5 30.5t-7 28t-18.5 11.5t-31 -21q-23 -25 -42 4q-19 28 -8 58q6 16 22 22q6 -1 26 -1.5t33.5 -4t19.5 -13.5q7 -12 18 -24t21.5 -20.5t20 -15t15.5 -10.5l5 -3q2 12 7.5 30.5t8 34.5t-0.5 32q-3 18 3.5 29 t18 22.5t15.5 24.5q6 14 10.5 35t8 31t15.5 22.5t34 22.5q-6 18 10 36q8 0 24 -1.5t24.5 -1.5t20 4.5t20.5 15.5q-10 23 -31 42.5t-37.5 29.5t-49 27t-43.5 23q0 1 2 8t3 11.5t1.5 10.5t-1 9.5t-4.5 4.5q31 -13 58.5 -14.5t38.5 2.5l12 5q5 28 -9.5 46t-36.5 24t-50 15 t-41 20q-18 -4 -37 0zM613 994q0 -17 8 -42t17 -45t9 -23q-8 1 -39.5 5.5t-52.5 10t-37 16.5q3 11 16 29.5t16 25.5q10 -10 19 -10t14 6t13.5 14.5t16.5 12.5z" />
<glyph unicode="&#xe136;" d="M756 1157q164 92 306 -9l-259 -138l145 -232l251 126q6 -89 -34 -156.5t-117 -110.5q-60 -34 -127 -39.5t-126 16.5l-596 -596q-15 -16 -36.5 -16t-36.5 16l-111 110q-15 15 -15 36.5t15 37.5l600 599q-34 101 5.5 201.5t135.5 154.5z" />
<glyph unicode="&#xe137;" horiz-adv-x="1220" d="M100 1196h1000q41 0 70.5 -29.5t29.5 -70.5v-100q0 -41 -29.5 -70.5t-70.5 -29.5h-1000q-41 0 -70.5 29.5t-29.5 70.5v100q0 41 29.5 70.5t70.5 29.5zM1100 1096h-200v-100h200v100zM100 796h1000q41 0 70.5 -29.5t29.5 -70.5v-100q0 -41 -29.5 -70.5t-70.5 -29.5h-1000 q-41 0 -70.5 29.5t-29.5 70.5v100q0 41 29.5 70.5t70.5 29.5zM1100 696h-500v-100h500v100zM100 396h1000q41 0 70.5 -29.5t29.5 -70.5v-100q0 -41 -29.5 -70.5t-70.5 -29.5h-1000q-41 0 -70.5 29.5t-29.5 70.5v100q0 41 29.5 70.5t70.5 29.5zM1100 296h-300v-100h300v100z " />
<glyph unicode="&#xe138;" d="M150 1200h900q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-900q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5zM700 500v-300l-200 -200v500l-350 500h900z" />
<glyph unicode="&#xe139;" d="M500 1200h200q41 0 70.5 -29.5t29.5 -70.5v-100h300q41 0 70.5 -29.5t29.5 -70.5v-400h-500v100h-200v-100h-500v400q0 41 29.5 70.5t70.5 29.5h300v100q0 41 29.5 70.5t70.5 29.5zM500 1100v-100h200v100h-200zM1200 400v-200q0 -41 -29.5 -70.5t-70.5 -29.5h-1000 q-41 0 -70.5 29.5t-29.5 70.5v200h1200z" />
<glyph unicode="&#xe140;" d="M50 1200h300q21 0 25 -10.5t-10 -24.5l-94 -94l199 -199q7 -8 7 -18t-7 -18l-106 -106q-8 -7 -18 -7t-18 7l-199 199l-94 -94q-14 -14 -24.5 -10t-10.5 25v300q0 21 14.5 35.5t35.5 14.5zM850 1200h300q21 0 35.5 -14.5t14.5 -35.5v-300q0 -21 -10.5 -25t-24.5 10l-94 94 l-199 -199q-8 -7 -18 -7t-18 7l-106 106q-7 8 -7 18t7 18l199 199l-94 94q-14 14 -10 24.5t25 10.5zM364 470l106 -106q7 -8 7 -18t-7 -18l-199 -199l94 -94q14 -14 10 -24.5t-25 -10.5h-300q-21 0 -35.5 14.5t-14.5 35.5v300q0 21 10.5 25t24.5 -10l94 -94l199 199 q8 7 18 7t18 -7zM1071 271l94 94q14 14 24.5 10t10.5 -25v-300q0 -21 -14.5 -35.5t-35.5 -14.5h-300q-21 0 -25 10.5t10 24.5l94 94l-199 199q-7 8 -7 18t7 18l106 106q8 7 18 7t18 -7z" />
<glyph unicode="&#xe141;" d="M596 1192q121 0 231.5 -47.5t190 -127t127 -190t47.5 -231.5t-47.5 -231.5t-127 -190.5t-190 -127t-231.5 -47t-231.5 47t-190.5 127t-127 190.5t-47 231.5t47 231.5t127 190t190.5 127t231.5 47.5zM596 1010q-112 0 -207.5 -55.5t-151 -151t-55.5 -207.5t55.5 -207.5 t151 -151t207.5 -55.5t207.5 55.5t151 151t55.5 207.5t-55.5 207.5t-151 151t-207.5 55.5zM454.5 905q22.5 0 38.5 -16t16 -38.5t-16 -39t-38.5 -16.5t-38.5 16.5t-16 39t16 38.5t38.5 16zM754.5 905q22.5 0 38.5 -16t16 -38.5t-16 -39t-38 -16.5q-14 0 -29 10l-55 -145 q17 -23 17 -51q0 -36 -25.5 -61.5t-61.5 -25.5t-61.5 25.5t-25.5 61.5q0 32 20.5 56.5t51.5 29.5l122 126l1 1q-9 14 -9 28q0 23 16 39t38.5 16zM345.5 709q22.5 0 38.5 -16t16 -38.5t-16 -38.5t-38.5 -16t-38.5 16t-16 38.5t16 38.5t38.5 16zM854.5 709q22.5 0 38.5 -16 t16 -38.5t-16 -38.5t-38.5 -16t-38.5 16t-16 38.5t16 38.5t38.5 16z" />
<glyph unicode="&#xe142;" d="M546 173l469 470q91 91 99 192q7 98 -52 175.5t-154 94.5q-22 4 -47 4q-34 0 -66.5 -10t-56.5 -23t-55.5 -38t-48 -41.5t-48.5 -47.5q-376 -375 -391 -390q-30 -27 -45 -41.5t-37.5 -41t-32 -46.5t-16 -47.5t-1.5 -56.5q9 -62 53.5 -95t99.5 -33q74 0 125 51l548 548 q36 36 20 75q-7 16 -21.5 26t-32.5 10q-26 0 -50 -23q-13 -12 -39 -38l-341 -338q-15 -15 -35.5 -15.5t-34.5 13.5t-14 34.5t14 34.5q327 333 361 367q35 35 67.5 51.5t78.5 16.5q14 0 29 -1q44 -8 74.5 -35.5t43.5 -68.5q14 -47 2 -96.5t-47 -84.5q-12 -11 -32 -32 t-79.5 -81t-114.5 -115t-124.5 -123.5t-123 -119.5t-96.5 -89t-57 -45q-56 -27 -120 -27q-70 0 -129 32t-93 89q-48 78 -35 173t81 163l511 511q71 72 111 96q91 55 198 55q80 0 152 -33q78 -36 129.5 -103t66.5 -154q17 -93 -11 -183.5t-94 -156.5l-482 -476 q-15 -15 -36 -16t-37 14t-17.5 34t14.5 35z" />
<glyph unicode="&#xe143;" d="M649 949q48 68 109.5 104t121.5 38.5t118.5 -20t102.5 -64t71 -100.5t27 -123q0 -57 -33.5 -117.5t-94 -124.5t-126.5 -127.5t-150 -152.5t-146 -174q-62 85 -145.5 174t-150 152.5t-126.5 127.5t-93.5 124.5t-33.5 117.5q0 64 28 123t73 100.5t104 64t119 20 t120.5 -38.5t104.5 -104zM896 972q-33 0 -64.5 -19t-56.5 -46t-47.5 -53.5t-43.5 -45.5t-37.5 -19t-36 19t-40 45.5t-43 53.5t-54 46t-65.5 19q-67 0 -122.5 -55.5t-55.5 -132.5q0 -23 13.5 -51t46 -65t57.5 -63t76 -75l22 -22q15 -14 44 -44t50.5 -51t46 -44t41 -35t23 -12 t23.5 12t42.5 36t46 44t52.5 52t44 43q4 4 12 13q43 41 63.5 62t52 55t46 55t26 46t11.5 44q0 79 -53 133.5t-120 54.5z" />
<glyph unicode="&#xe144;" d="M776.5 1214q93.5 0 159.5 -66l141 -141q66 -66 66 -160q0 -42 -28 -95.5t-62 -87.5l-29 -29q-31 53 -77 99l-18 18l95 95l-247 248l-389 -389l212 -212l-105 -106l-19 18l-141 141q-66 66 -66 159t66 159l283 283q65 66 158.5 66zM600 706l105 105q10 -8 19 -17l141 -141 q66 -66 66 -159t-66 -159l-283 -283q-66 -66 -159 -66t-159 66l-141 141q-66 66 -66 159.5t66 159.5l55 55q29 -55 75 -102l18 -17l-95 -95l247 -248l389 389z" />
<glyph unicode="&#xe145;" d="M603 1200q85 0 162 -15t127 -38t79 -48t29 -46v-953q0 -41 -29.5 -70.5t-70.5 -29.5h-600q-41 0 -70.5 29.5t-29.5 70.5v953q0 21 30 46.5t81 48t129 37.5t163 15zM300 1000v-700h600v700h-600zM600 254q-43 0 -73.5 -30.5t-30.5 -73.5t30.5 -73.5t73.5 -30.5t73.5 30.5 t30.5 73.5t-30.5 73.5t-73.5 30.5z" />
<glyph unicode="&#xe146;" d="M902 1185l283 -282q15 -15 15 -36t-14.5 -35.5t-35.5 -14.5t-35 15l-36 35l-279 -267v-300l-212 210l-308 -307l-280 -203l203 280l307 308l-210 212h300l267 279l-35 36q-15 14 -15 35t14.5 35.5t35.5 14.5t35 -15z" />
<glyph unicode="&#xe148;" d="M700 1248v-78q38 -5 72.5 -14.5t75.5 -31.5t71 -53.5t52 -84t24 -118.5h-159q-4 36 -10.5 59t-21 45t-40 35.5t-64.5 20.5v-307l64 -13q34 -7 64 -16.5t70 -32t67.5 -52.5t47.5 -80t20 -112q0 -139 -89 -224t-244 -97v-77h-100v79q-150 16 -237 103q-40 40 -52.5 93.5 t-15.5 139.5h139q5 -77 48.5 -126t117.5 -65v335l-27 8q-46 14 -79 26.5t-72 36t-63 52t-40 72.5t-16 98q0 70 25 126t67.5 92t94.5 57t110 27v77h100zM600 754v274q-29 -4 -50 -11t-42 -21.5t-31.5 -41.5t-10.5 -65q0 -29 7 -50.5t16.5 -34t28.5 -22.5t31.5 -14t37.5 -10 q9 -3 13 -4zM700 547v-310q22 2 42.5 6.5t45 15.5t41.5 27t29 42t12 59.5t-12.5 59.5t-38 44.5t-53 31t-66.5 24.5z" />
<glyph unicode="&#xe149;" d="M561 1197q84 0 160.5 -40t123.5 -109.5t47 -147.5h-153q0 40 -19.5 71.5t-49.5 48.5t-59.5 26t-55.5 9q-37 0 -79 -14.5t-62 -35.5q-41 -44 -41 -101q0 -26 13.5 -63t26.5 -61t37 -66q6 -9 9 -14h241v-100h-197q8 -50 -2.5 -115t-31.5 -95q-45 -62 -99 -112 q34 10 83 17.5t71 7.5q32 1 102 -16t104 -17q83 0 136 30l50 -147q-31 -19 -58 -30.5t-55 -15.5t-42 -4.5t-46 -0.5q-23 0 -76 17t-111 32.5t-96 11.5q-39 -3 -82 -16t-67 -25l-23 -11l-55 145q4 3 16 11t15.5 10.5t13 9t15.5 12t14.5 14t17.5 18.5q48 55 54 126.5 t-30 142.5h-221v100h166q-23 47 -44 104q-7 20 -12 41.5t-6 55.5t6 66.5t29.5 70.5t58.5 71q97 88 263 88z" />
<glyph unicode="&#xe150;" d="M400 300h150q21 0 25 -11t-10 -25l-230 -250q-14 -15 -35 -15t-35 15l-230 250q-14 14 -10 25t25 11h150v900h200v-900zM935 1184l230 -249q14 -14 10 -24.5t-25 -10.5h-150v-900h-200v900h-150q-21 0 -25 10.5t10 24.5l230 249q14 15 35 15t35 -15z" />
<glyph unicode="&#xe151;" d="M1000 700h-100v100h-100v-100h-100v500h300v-500zM400 300h150q21 0 25 -11t-10 -25l-230 -250q-14 -15 -35 -15t-35 15l-230 250q-14 14 -10 25t25 11h150v900h200v-900zM801 1100v-200h100v200h-100zM1000 350l-200 -250h200v-100h-300v150l200 250h-200v100h300v-150z " />
<glyph unicode="&#xe152;" d="M400 300h150q21 0 25 -11t-10 -25l-230 -250q-14 -15 -35 -15t-35 15l-230 250q-14 14 -10 25t25 11h150v900h200v-900zM1000 1050l-200 -250h200v-100h-300v150l200 250h-200v100h300v-150zM1000 0h-100v100h-100v-100h-100v500h300v-500zM801 400v-200h100v200h-100z " />
<glyph unicode="&#xe153;" d="M400 300h150q21 0 25 -11t-10 -25l-230 -250q-14 -15 -35 -15t-35 15l-230 250q-14 14 -10 25t25 11h150v900h200v-900zM1000 700h-100v400h-100v100h200v-500zM1100 0h-100v100h-200v400h300v-500zM901 400v-200h100v200h-100z" />
<glyph unicode="&#xe154;" d="M400 300h150q21 0 25 -11t-10 -25l-230 -250q-14 -15 -35 -15t-35 15l-230 250q-14 14 -10 25t25 11h150v900h200v-900zM1100 700h-100v100h-200v400h300v-500zM901 1100v-200h100v200h-100zM1000 0h-100v400h-100v100h200v-500z" />
<glyph unicode="&#xe155;" d="M400 300h150q21 0 25 -11t-10 -25l-230 -250q-14 -15 -35 -15t-35 15l-230 250q-14 14 -10 25t25 11h150v900h200v-900zM900 1000h-200v200h200v-200zM1000 700h-300v200h300v-200zM1100 400h-400v200h400v-200zM1200 100h-500v200h500v-200z" />
<glyph unicode="&#xe156;" d="M400 300h150q21 0 25 -11t-10 -25l-230 -250q-14 -15 -35 -15t-35 15l-230 250q-14 14 -10 25t25 11h150v900h200v-900zM1200 1000h-500v200h500v-200zM1100 700h-400v200h400v-200zM1000 400h-300v200h300v-200zM900 100h-200v200h200v-200z" />
<glyph unicode="&#xe157;" d="M350 1100h400q162 0 256 -93.5t94 -256.5v-400q0 -165 -93.5 -257.5t-256.5 -92.5h-400q-165 0 -257.5 92.5t-92.5 257.5v400q0 165 92.5 257.5t257.5 92.5zM800 900h-500q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5 v500q0 41 -29.5 70.5t-70.5 29.5z" />
<glyph unicode="&#xe158;" d="M350 1100h400q165 0 257.5 -92.5t92.5 -257.5v-400q0 -165 -92.5 -257.5t-257.5 -92.5h-400q-163 0 -256.5 92.5t-93.5 257.5v400q0 163 94 256.5t256 93.5zM800 900h-500q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5 v500q0 41 -29.5 70.5t-70.5 29.5zM440 770l253 -190q17 -12 17 -30t-17 -30l-253 -190q-16 -12 -28 -6.5t-12 26.5v400q0 21 12 26.5t28 -6.5z" />
<glyph unicode="&#xe159;" d="M350 1100h400q163 0 256.5 -94t93.5 -256v-400q0 -165 -92.5 -257.5t-257.5 -92.5h-400q-165 0 -257.5 92.5t-92.5 257.5v400q0 163 92.5 256.5t257.5 93.5zM800 900h-500q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5 v500q0 41 -29.5 70.5t-70.5 29.5zM350 700h400q21 0 26.5 -12t-6.5 -28l-190 -253q-12 -17 -30 -17t-30 17l-190 253q-12 16 -6.5 28t26.5 12z" />
<glyph unicode="&#xe160;" d="M350 1100h400q165 0 257.5 -92.5t92.5 -257.5v-400q0 -163 -92.5 -256.5t-257.5 -93.5h-400q-163 0 -256.5 94t-93.5 256v400q0 165 92.5 257.5t257.5 92.5zM800 900h-500q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5 v500q0 41 -29.5 70.5t-70.5 29.5zM580 693l190 -253q12 -16 6.5 -28t-26.5 -12h-400q-21 0 -26.5 12t6.5 28l190 253q12 17 30 17t30 -17z" />
<glyph unicode="&#xe161;" d="M550 1100h400q165 0 257.5 -92.5t92.5 -257.5v-400q0 -165 -92.5 -257.5t-257.5 -92.5h-400q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5h450q41 0 70.5 29.5t29.5 70.5v500q0 41 -29.5 70.5t-70.5 29.5h-450q-21 0 -35.5 14.5t-14.5 35.5v100 q0 21 14.5 35.5t35.5 14.5zM338 867l324 -284q16 -14 16 -33t-16 -33l-324 -284q-16 -14 -27 -9t-11 26v150h-250q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5h250v150q0 21 11 26t27 -9z" />
<glyph unicode="&#xe162;" d="M793 1182l9 -9q8 -10 5 -27q-3 -11 -79 -225.5t-78 -221.5l300 1q24 0 32.5 -17.5t-5.5 -35.5q-1 0 -133.5 -155t-267 -312.5t-138.5 -162.5q-12 -15 -26 -15h-9l-9 8q-9 11 -4 32q2 9 42 123.5t79 224.5l39 110h-302q-23 0 -31 19q-10 21 6 41q75 86 209.5 237.5 t228 257t98.5 111.5q9 16 25 16h9z" />
<glyph unicode="&#xe163;" d="M350 1100h400q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-450q-41 0 -70.5 -29.5t-29.5 -70.5v-500q0 -41 29.5 -70.5t70.5 -29.5h450q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-165 0 -257.5 92.5t-92.5 257.5v400 q0 165 92.5 257.5t257.5 92.5zM938 867l324 -284q16 -14 16 -33t-16 -33l-324 -284q-16 -14 -27 -9t-11 26v150h-250q-21 0 -35.5 14.5t-14.5 35.5v200q0 21 14.5 35.5t35.5 14.5h250v150q0 21 11 26t27 -9z" />
<glyph unicode="&#xe164;" d="M750 1200h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -10.5 -25t-24.5 10l-109 109l-312 -312q-15 -15 -35.5 -15t-35.5 15l-141 141q-15 15 -15 35.5t15 35.5l312 312l-109 109q-14 14 -10 24.5t25 10.5zM456 900h-156q-41 0 -70.5 -29.5t-29.5 -70.5v-500 q0 -41 29.5 -70.5t70.5 -29.5h500q41 0 70.5 29.5t29.5 70.5v148l200 200v-298q0 -165 -93.5 -257.5t-256.5 -92.5h-400q-165 0 -257.5 92.5t-92.5 257.5v400q0 165 92.5 257.5t257.5 92.5h300z" />
<glyph unicode="&#xe165;" d="M600 1186q119 0 227.5 -46.5t187 -125t125 -187t46.5 -227.5t-46.5 -227.5t-125 -187t-187 -125t-227.5 -46.5t-227.5 46.5t-187 125t-125 187t-46.5 227.5t46.5 227.5t125 187t187 125t227.5 46.5zM600 1022q-115 0 -212 -56.5t-153.5 -153.5t-56.5 -212t56.5 -212 t153.5 -153.5t212 -56.5t212 56.5t153.5 153.5t56.5 212t-56.5 212t-153.5 153.5t-212 56.5zM600 794q80 0 137 -57t57 -137t-57 -137t-137 -57t-137 57t-57 137t57 137t137 57z" />
<glyph unicode="&#xe166;" d="M450 1200h200q21 0 35.5 -14.5t14.5 -35.5v-350h245q20 0 25 -11t-9 -26l-383 -426q-14 -15 -33.5 -15t-32.5 15l-379 426q-13 15 -8.5 26t25.5 11h250v350q0 21 14.5 35.5t35.5 14.5zM50 300h1000q21 0 35.5 -14.5t14.5 -35.5v-250h-1100v250q0 21 14.5 35.5t35.5 14.5z M900 200v-50h100v50h-100z" />
<glyph unicode="&#xe167;" d="M583 1182l378 -435q14 -15 9 -31t-26 -16h-244v-250q0 -20 -17 -35t-39 -15h-200q-20 0 -32 14.5t-12 35.5v250h-250q-20 0 -25.5 16.5t8.5 31.5l383 431q14 16 33.5 17t33.5 -14zM50 300h1000q21 0 35.5 -14.5t14.5 -35.5v-250h-1100v250q0 21 14.5 35.5t35.5 14.5z M900 200v-50h100v50h-100z" />
<glyph unicode="&#xe168;" d="M396 723l369 369q7 7 17.5 7t17.5 -7l139 -139q7 -8 7 -18.5t-7 -17.5l-525 -525q-7 -8 -17.5 -8t-17.5 8l-292 291q-7 8 -7 18t7 18l139 139q8 7 18.5 7t17.5 -7zM50 300h1000q21 0 35.5 -14.5t14.5 -35.5v-250h-1100v250q0 21 14.5 35.5t35.5 14.5zM900 200v-50h100v50 h-100z" />
<glyph unicode="&#xe169;" d="M135 1023l142 142q14 14 35 14t35 -14l77 -77l-212 -212l-77 76q-14 15 -14 36t14 35zM655 855l210 210q14 14 24.5 10t10.5 -25l-2 -599q-1 -20 -15.5 -35t-35.5 -15l-597 -1q-21 0 -25 10.5t10 24.5l208 208l-154 155l212 212zM50 300h1000q21 0 35.5 -14.5t14.5 -35.5 v-250h-1100v250q0 21 14.5 35.5t35.5 14.5zM900 200v-50h100v50h-100z" />
<glyph unicode="&#xe170;" d="M350 1200l599 -2q20 -1 35 -15.5t15 -35.5l1 -597q0 -21 -10.5 -25t-24.5 10l-208 208l-155 -154l-212 212l155 154l-210 210q-14 14 -10 24.5t25 10.5zM524 512l-76 -77q-15 -14 -36 -14t-35 14l-142 142q-14 14 -14 35t14 35l77 77zM50 300h1000q21 0 35.5 -14.5 t14.5 -35.5v-250h-1100v250q0 21 14.5 35.5t35.5 14.5zM900 200v-50h100v50h-100z" />
<glyph unicode="&#xe171;" d="M1200 103l-483 276l-314 -399v423h-399l1196 796v-1096zM483 424v-230l683 953z" />
<glyph unicode="&#xe172;" d="M1100 1000v-850q0 -21 -14.5 -35.5t-35.5 -14.5h-150v400h-700v-400h-150q-21 0 -35.5 14.5t-14.5 35.5v1000q0 20 14.5 35t35.5 15h250v-300h500v300h100zM700 1000h-100v200h100v-200z" />
<glyph unicode="&#xe173;" d="M1100 1000l-2 -149l-299 -299l-95 95q-9 9 -21.5 9t-21.5 -9l-149 -147h-312v-400h-150q-21 0 -35.5 14.5t-14.5 35.5v1000q0 20 14.5 35t35.5 15h250v-300h500v300h100zM700 1000h-100v200h100v-200zM1132 638l106 -106q7 -7 7 -17.5t-7 -17.5l-420 -421q-8 -7 -18 -7 t-18 7l-202 203q-8 7 -8 17.5t8 17.5l106 106q7 8 17.5 8t17.5 -8l79 -79l297 297q7 7 17.5 7t17.5 -7z" />
<glyph unicode="&#xe174;" d="M1100 1000v-269l-103 -103l-134 134q-15 15 -33.5 16.5t-34.5 -12.5l-266 -266h-329v-400h-150q-21 0 -35.5 14.5t-14.5 35.5v1000q0 20 14.5 35t35.5 15h250v-300h500v300h100zM700 1000h-100v200h100v-200zM1202 572l70 -70q15 -15 15 -35.5t-15 -35.5l-131 -131 l131 -131q15 -15 15 -35.5t-15 -35.5l-70 -70q-15 -15 -35.5 -15t-35.5 15l-131 131l-131 -131q-15 -15 -35.5 -15t-35.5 15l-70 70q-15 15 -15 35.5t15 35.5l131 131l-131 131q-15 15 -15 35.5t15 35.5l70 70q15 15 35.5 15t35.5 -15l131 -131l131 131q15 15 35.5 15 t35.5 -15z" />
<glyph unicode="&#xe175;" d="M1100 1000v-300h-350q-21 0 -35.5 -14.5t-14.5 -35.5v-150h-500v-400h-150q-21 0 -35.5 14.5t-14.5 35.5v1000q0 20 14.5 35t35.5 15h250v-300h500v300h100zM700 1000h-100v200h100v-200zM850 600h100q21 0 35.5 -14.5t14.5 -35.5v-250h150q21 0 25 -10.5t-10 -24.5 l-230 -230q-14 -14 -35 -14t-35 14l-230 230q-14 14 -10 24.5t25 10.5h150v250q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe176;" d="M1100 1000v-400l-165 165q-14 15 -35 15t-35 -15l-263 -265h-402v-400h-150q-21 0 -35.5 14.5t-14.5 35.5v1000q0 20 14.5 35t35.5 15h250v-300h500v300h100zM700 1000h-100v200h100v-200zM935 565l230 -229q14 -15 10 -25.5t-25 -10.5h-150v-250q0 -20 -14.5 -35 t-35.5 -15h-100q-21 0 -35.5 15t-14.5 35v250h-150q-21 0 -25 10.5t10 25.5l230 229q14 15 35 15t35 -15z" />
<glyph unicode="&#xe177;" d="M50 1100h1100q21 0 35.5 -14.5t14.5 -35.5v-150h-1200v150q0 21 14.5 35.5t35.5 14.5zM1200 800v-550q0 -21 -14.5 -35.5t-35.5 -14.5h-1100q-21 0 -35.5 14.5t-14.5 35.5v550h1200zM100 500v-200h400v200h-400z" />
<glyph unicode="&#xe178;" d="M935 1165l248 -230q14 -14 14 -35t-14 -35l-248 -230q-14 -14 -24.5 -10t-10.5 25v150h-400v200h400v150q0 21 10.5 25t24.5 -10zM200 800h-50q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5h50v-200zM400 800h-100v200h100v-200zM18 435l247 230 q14 14 24.5 10t10.5 -25v-150h400v-200h-400v-150q0 -21 -10.5 -25t-24.5 10l-247 230q-15 14 -15 35t15 35zM900 300h-100v200h100v-200zM1000 500h51q20 0 34.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-34.5 -14.5h-51v200z" />
<glyph unicode="&#xe179;" d="M862 1073l276 116q25 18 43.5 8t18.5 -41v-1106q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v397q-4 1 -11 5t-24 17.5t-30 29t-24 42t-11 56.5v359q0 31 18.5 65t43.5 52zM550 1200q22 0 34.5 -12.5t14.5 -24.5l1 -13v-450q0 -28 -10.5 -59.5 t-25 -56t-29 -45t-25.5 -31.5l-10 -11v-447q0 -21 -14.5 -35.5t-35.5 -14.5h-200q-21 0 -35.5 14.5t-14.5 35.5v447q-4 4 -11 11.5t-24 30.5t-30 46t-24 55t-11 60v450q0 2 0.5 5.5t4 12t8.5 15t14.5 12t22.5 5.5q20 0 32.5 -12.5t14.5 -24.5l3 -13v-350h100v350v5.5t2.5 12 t7 15t15 12t25.5 5.5q23 0 35.5 -12.5t13.5 -24.5l1 -13v-350h100v350q0 2 0.5 5.5t3 12t7 15t15 12t24.5 5.5z" />
<glyph unicode="&#xe180;" d="M1200 1100v-56q-4 0 -11 -0.5t-24 -3t-30 -7.5t-24 -15t-11 -24v-888q0 -22 25 -34.5t50 -13.5l25 -2v-56h-400v56q75 0 87.5 6.5t12.5 43.5v394h-500v-394q0 -37 12.5 -43.5t87.5 -6.5v-56h-400v56q4 0 11 0.5t24 3t30 7.5t24 15t11 24v888q0 22 -25 34.5t-50 13.5 l-25 2v56h400v-56q-75 0 -87.5 -6.5t-12.5 -43.5v-394h500v394q0 37 -12.5 43.5t-87.5 6.5v56h400z" />
<glyph unicode="&#xe181;" d="M675 1000h375q21 0 35.5 -14.5t14.5 -35.5v-150h-105l-295 -98v98l-200 200h-400l100 100h375zM100 900h300q41 0 70.5 -29.5t29.5 -70.5v-500q0 -41 -29.5 -70.5t-70.5 -29.5h-300q-41 0 -70.5 29.5t-29.5 70.5v500q0 41 29.5 70.5t70.5 29.5zM100 800v-200h300v200 h-300zM1100 535l-400 -133v163l400 133v-163zM100 500v-200h300v200h-300zM1100 398v-248q0 -21 -14.5 -35.5t-35.5 -14.5h-375l-100 -100h-375l-100 100h400l200 200h105z" />
<glyph unicode="&#xe182;" d="M17 1007l162 162q17 17 40 14t37 -22l139 -194q14 -20 11 -44.5t-20 -41.5l-119 -118q102 -142 228 -268t267 -227l119 118q17 17 42.5 19t44.5 -12l192 -136q19 -14 22.5 -37.5t-13.5 -40.5l-163 -162q-3 -1 -9.5 -1t-29.5 2t-47.5 6t-62.5 14.5t-77.5 26.5t-90 42.5 t-101.5 60t-111 83t-119 108.5q-74 74 -133.5 150.5t-94.5 138.5t-60 119.5t-34.5 100t-15 74.5t-4.5 48z" />
<glyph unicode="&#xe183;" d="M600 1100q92 0 175 -10.5t141.5 -27t108.5 -36.5t81.5 -40t53.5 -37t31 -27l9 -10v-200q0 -21 -14.5 -33t-34.5 -9l-202 34q-20 3 -34.5 20t-14.5 38v146q-141 24 -300 24t-300 -24v-146q0 -21 -14.5 -38t-34.5 -20l-202 -34q-20 -3 -34.5 9t-14.5 33v200q3 4 9.5 10.5 t31 26t54 37.5t80.5 39.5t109 37.5t141 26.5t175 10.5zM600 795q56 0 97 -9.5t60 -23.5t30 -28t12 -24l1 -10v-50l365 -303q14 -15 24.5 -40t10.5 -45v-212q0 -21 -14.5 -35.5t-35.5 -14.5h-1100q-21 0 -35.5 14.5t-14.5 35.5v212q0 20 10.5 45t24.5 40l365 303v50 q0 4 1 10.5t12 23t30 29t60 22.5t97 10z" />
<glyph unicode="&#xe184;" d="M1100 700l-200 -200h-600l-200 200v500h200v-200h200v200h200v-200h200v200h200v-500zM250 400h700q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-12l137 -100h-950l137 100h-12q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5zM50 100h1100q21 0 35.5 -14.5 t14.5 -35.5v-50h-1200v50q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe185;" d="M700 1100h-100q-41 0 -70.5 -29.5t-29.5 -70.5v-1000h300v1000q0 41 -29.5 70.5t-70.5 29.5zM1100 800h-100q-41 0 -70.5 -29.5t-29.5 -70.5v-700h300v700q0 41 -29.5 70.5t-70.5 29.5zM400 0h-300v400q0 41 29.5 70.5t70.5 29.5h100q41 0 70.5 -29.5t29.5 -70.5v-400z " />
<glyph unicode="&#xe186;" d="M200 1100h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212v500q0 124 88 212t212 88zM100 900v-700h900v700h-900zM500 700h-200v-100h200v-300h-300v100h200v100h-200v300h300v-100zM900 700v-300l-100 -100h-200v500h200z M700 700v-300h100v300h-100z" />
<glyph unicode="&#xe187;" d="M200 1100h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212v500q0 124 88 212t212 88zM100 900v-700h900v700h-900zM500 300h-100v200h-100v-200h-100v500h100v-200h100v200h100v-500zM900 700v-300l-100 -100h-200v500h200z M700 700v-300h100v300h-100z" />
<glyph unicode="&#xe188;" d="M200 1100h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212v500q0 124 88 212t212 88zM100 900v-700h900v700h-900zM500 700h-200v-300h200v-100h-300v500h300v-100zM900 700h-200v-300h200v-100h-300v500h300v-100z" />
<glyph unicode="&#xe189;" d="M200 1100h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212v500q0 124 88 212t212 88zM100 900v-700h900v700h-900zM500 400l-300 150l300 150v-300zM900 550l-300 -150v300z" />
<glyph unicode="&#xe190;" d="M200 1100h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212v500q0 124 88 212t212 88zM100 900v-700h900v700h-900zM900 300h-700v500h700v-500zM800 700h-130q-38 0 -66.5 -43t-28.5 -108t27 -107t68 -42h130v300zM300 700v-300 h130q41 0 68 42t27 107t-28.5 108t-66.5 43h-130z" />
<glyph unicode="&#xe191;" d="M200 1100h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212v500q0 124 88 212t212 88zM100 900v-700h900v700h-900zM500 700h-200v-100h200v-300h-300v100h200v100h-200v300h300v-100zM900 300h-100v400h-100v100h200v-500z M700 300h-100v100h100v-100z" />
<glyph unicode="&#xe192;" d="M200 1100h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212v500q0 124 88 212t212 88zM100 900v-700h900v700h-900zM300 700h200v-400h-300v500h100v-100zM900 300h-100v400h-100v100h200v-500zM300 600v-200h100v200h-100z M700 300h-100v100h100v-100z" />
<glyph unicode="&#xe193;" d="M200 1100h700q124 0 212 -88t88 -212v-500q0 -124 -88 -212t-212 -88h-700q-124 0 -212 88t-88 212v500q0 124 88 212t212 88zM100 900v-700h900v700h-900zM500 500l-199 -200h-100v50l199 200v150h-200v100h300v-300zM900 300h-100v400h-100v100h200v-500zM701 300h-100 v100h100v-100z" />
<glyph unicode="&#xe194;" d="M600 1191q120 0 229.5 -47t188.5 -126t126 -188.5t47 -229.5t-47 -229.5t-126 -188.5t-188.5 -126t-229.5 -47t-229.5 47t-188.5 126t-126 188.5t-47 229.5t47 229.5t126 188.5t188.5 126t229.5 47zM600 1021q-114 0 -211 -56.5t-153.5 -153.5t-56.5 -211t56.5 -211 t153.5 -153.5t211 -56.5t211 56.5t153.5 153.5t56.5 211t-56.5 211t-153.5 153.5t-211 56.5zM800 700h-300v-200h300v-100h-300l-100 100v200l100 100h300v-100z" />
<glyph unicode="&#xe195;" d="M600 1191q120 0 229.5 -47t188.5 -126t126 -188.5t47 -229.5t-47 -229.5t-126 -188.5t-188.5 -126t-229.5 -47t-229.5 47t-188.5 126t-126 188.5t-47 229.5t47 229.5t126 188.5t188.5 126t229.5 47zM600 1021q-114 0 -211 -56.5t-153.5 -153.5t-56.5 -211t56.5 -211 t153.5 -153.5t211 -56.5t211 56.5t153.5 153.5t56.5 211t-56.5 211t-153.5 153.5t-211 56.5zM800 700v-100l-50 -50l100 -100v-50h-100l-100 100h-150v-100h-100v400h300zM500 700v-100h200v100h-200z" />
<glyph unicode="&#xe197;" d="M503 1089q110 0 200.5 -59.5t134.5 -156.5q44 14 90 14q120 0 205 -86.5t85 -207t-85 -207t-205 -86.5h-128v250q0 21 -14.5 35.5t-35.5 14.5h-300q-21 0 -35.5 -14.5t-14.5 -35.5v-250h-222q-80 0 -136 57.5t-56 136.5q0 69 43 122.5t108 67.5q-2 19 -2 37q0 100 49 185 t134 134t185 49zM525 500h150q10 0 17.5 -7.5t7.5 -17.5v-275h137q21 0 26 -11.5t-8 -27.5l-223 -244q-13 -16 -32 -16t-32 16l-223 244q-13 16 -8 27.5t26 11.5h137v275q0 10 7.5 17.5t17.5 7.5z" />
<glyph unicode="&#xe198;" d="M502 1089q110 0 201 -59.5t135 -156.5q43 15 89 15q121 0 206 -86.5t86 -206.5q0 -99 -60 -181t-150 -110l-378 360q-13 16 -31.5 16t-31.5 -16l-381 -365h-9q-79 0 -135.5 57.5t-56.5 136.5q0 69 43 122.5t108 67.5q-2 19 -2 38q0 100 49 184.5t133.5 134t184.5 49.5z M632 467l223 -228q13 -16 8 -27.5t-26 -11.5h-137v-275q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v275h-137q-21 0 -26 11.5t8 27.5q199 204 223 228q19 19 31.5 19t32.5 -19z" />
<glyph unicode="&#xe199;" d="M700 100v100h400l-270 300h170l-270 300h170l-300 333l-300 -333h170l-270 -300h170l-270 -300h400v-100h-50q-21 0 -35.5 -14.5t-14.5 -35.5v-50h400v50q0 21 -14.5 35.5t-35.5 14.5h-50z" />
<glyph unicode="&#xe200;" d="M600 1179q94 0 167.5 -56.5t99.5 -145.5q89 -6 150.5 -71.5t61.5 -155.5q0 -61 -29.5 -112.5t-79.5 -82.5q9 -29 9 -55q0 -74 -52.5 -126.5t-126.5 -52.5q-55 0 -100 30v-251q21 0 35.5 -14.5t14.5 -35.5v-50h-300v50q0 21 14.5 35.5t35.5 14.5v251q-45 -30 -100 -30 q-74 0 -126.5 52.5t-52.5 126.5q0 18 4 38q-47 21 -75.5 65t-28.5 97q0 74 52.5 126.5t126.5 52.5q5 0 23 -2q0 2 -1 10t-1 13q0 116 81.5 197.5t197.5 81.5z" />
<glyph unicode="&#xe201;" d="M1010 1010q111 -111 150.5 -260.5t0 -299t-150.5 -260.5q-83 -83 -191.5 -126.5t-218.5 -43.5t-218.5 43.5t-191.5 126.5q-111 111 -150.5 260.5t0 299t150.5 260.5q83 83 191.5 126.5t218.5 43.5t218.5 -43.5t191.5 -126.5zM476 1065q-4 0 -8 -1q-121 -34 -209.5 -122.5 t-122.5 -209.5q-4 -12 2.5 -23t18.5 -14l36 -9q3 -1 7 -1q23 0 29 22q27 96 98 166q70 71 166 98q11 3 17.5 13.5t3.5 22.5l-9 35q-3 13 -14 19q-7 4 -15 4zM512 920q-4 0 -9 -2q-80 -24 -138.5 -82.5t-82.5 -138.5q-4 -13 2 -24t19 -14l34 -9q4 -1 8 -1q22 0 28 21 q18 58 58.5 98.5t97.5 58.5q12 3 18 13.5t3 21.5l-9 35q-3 12 -14 19q-7 4 -15 4zM719.5 719.5q-49.5 49.5 -119.5 49.5t-119.5 -49.5t-49.5 -119.5t49.5 -119.5t119.5 -49.5t119.5 49.5t49.5 119.5t-49.5 119.5zM855 551q-22 0 -28 -21q-18 -58 -58.5 -98.5t-98.5 -57.5 q-11 -4 -17 -14.5t-3 -21.5l9 -35q3 -12 14 -19q7 -4 15 -4q4 0 9 2q80 24 138.5 82.5t82.5 138.5q4 13 -2.5 24t-18.5 14l-34 9q-4 1 -8 1zM1000 515q-23 0 -29 -22q-27 -96 -98 -166q-70 -71 -166 -98q-11 -3 -17.5 -13.5t-3.5 -22.5l9 -35q3 -13 14 -19q7 -4 15 -4 q4 0 8 1q121 34 209.5 122.5t122.5 209.5q4 12 -2.5 23t-18.5 14l-36 9q-3 1 -7 1z" />
<glyph unicode="&#xe202;" d="M700 800h300v-380h-180v200h-340v-200h-380v755q0 10 7.5 17.5t17.5 7.5h575v-400zM1000 900h-200v200zM700 300h162l-212 -212l-212 212h162v200h100v-200zM520 0h-395q-10 0 -17.5 7.5t-7.5 17.5v395zM1000 220v-195q0 -10 -7.5 -17.5t-17.5 -7.5h-195z" />
<glyph unicode="&#xe203;" d="M700 800h300v-520l-350 350l-550 -550v1095q0 10 7.5 17.5t17.5 7.5h575v-400zM1000 900h-200v200zM862 200h-162v-200h-100v200h-162l212 212zM480 0h-355q-10 0 -17.5 7.5t-7.5 17.5v55h380v-80zM1000 80v-55q0 -10 -7.5 -17.5t-17.5 -7.5h-155v80h180z" />
<glyph unicode="&#xe204;" d="M1162 800h-162v-200h100l100 -100h-300v300h-162l212 212zM200 800h200q27 0 40 -2t29.5 -10.5t23.5 -30t7 -57.5h300v-100h-600l-200 -350v450h100q0 36 7 57.5t23.5 30t29.5 10.5t40 2zM800 400h240l-240 -400h-800l300 500h500v-100z" />
<glyph unicode="&#xe205;" d="M650 1100h100q21 0 35.5 -14.5t14.5 -35.5v-50h50q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-300q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5h50v50q0 21 14.5 35.5t35.5 14.5zM1000 850v150q41 0 70.5 -29.5t29.5 -70.5v-800 q0 -41 -29.5 -70.5t-70.5 -29.5h-600q-1 0 -20 4l246 246l-326 326v324q0 41 29.5 70.5t70.5 29.5v-150q0 -62 44 -106t106 -44h300q62 0 106 44t44 106zM412 250l-212 -212v162h-200v100h200v162z" />
<glyph unicode="&#xe206;" d="M450 1100h100q21 0 35.5 -14.5t14.5 -35.5v-50h50q21 0 35.5 -14.5t14.5 -35.5v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-300q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5h50v50q0 21 14.5 35.5t35.5 14.5zM800 850v150q41 0 70.5 -29.5t29.5 -70.5v-500 h-200v-300h200q0 -36 -7 -57.5t-23.5 -30t-29.5 -10.5t-40 -2h-600q-41 0 -70.5 29.5t-29.5 70.5v800q0 41 29.5 70.5t70.5 29.5v-150q0 -62 44 -106t106 -44h300q62 0 106 44t44 106zM1212 250l-212 -212v162h-200v100h200v162z" />
<glyph unicode="&#xe209;" d="M658 1197l637 -1104q23 -38 7 -65.5t-60 -27.5h-1276q-44 0 -60 27.5t7 65.5l637 1104q22 39 54 39t54 -39zM704 800h-208q-20 0 -32 -14.5t-8 -34.5l58 -302q4 -20 21.5 -34.5t37.5 -14.5h54q20 0 37.5 14.5t21.5 34.5l58 302q4 20 -8 34.5t-32 14.5zM500 300v-100h200 v100h-200z" />
<glyph unicode="&#xe210;" d="M425 1100h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5zM425 800h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5 t17.5 7.5zM825 800h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5zM25 500h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v150 q0 10 7.5 17.5t17.5 7.5zM425 500h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5zM825 500h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5 v150q0 10 7.5 17.5t17.5 7.5zM25 200h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5zM425 200h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5 t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5zM825 200h250q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-250q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5z" />
<glyph unicode="&#xe211;" d="M700 1200h100v-200h-100v-100h350q62 0 86.5 -39.5t-3.5 -94.5l-66 -132q-41 -83 -81 -134h-772q-40 51 -81 134l-66 132q-28 55 -3.5 94.5t86.5 39.5h350v100h-100v200h100v100h200v-100zM250 400h700q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-12l137 -100 h-950l138 100h-13q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5zM50 100h1100q21 0 35.5 -14.5t14.5 -35.5v-50h-1200v50q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe212;" d="M600 1300q40 0 68.5 -29.5t28.5 -70.5h-194q0 41 28.5 70.5t68.5 29.5zM443 1100h314q18 -37 18 -75q0 -8 -3 -25h328q41 0 44.5 -16.5t-30.5 -38.5l-175 -145h-678l-178 145q-34 22 -29 38.5t46 16.5h328q-3 17 -3 25q0 38 18 75zM250 700h700q21 0 35.5 -14.5 t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-150v-200l275 -200h-950l275 200v200h-150q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5zM50 100h1100q21 0 35.5 -14.5t14.5 -35.5v-50h-1200v50q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe213;" d="M600 1181q75 0 128 -53t53 -128t-53 -128t-128 -53t-128 53t-53 128t53 128t128 53zM602 798h46q34 0 55.5 -28.5t21.5 -86.5q0 -76 39 -183h-324q39 107 39 183q0 58 21.5 86.5t56.5 28.5h45zM250 400h700q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-13 l138 -100h-950l137 100h-12q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5zM50 100h1100q21 0 35.5 -14.5t14.5 -35.5v-50h-1200v50q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe214;" d="M600 1300q47 0 92.5 -53.5t71 -123t25.5 -123.5q0 -78 -55.5 -133.5t-133.5 -55.5t-133.5 55.5t-55.5 133.5q0 62 34 143l144 -143l111 111l-163 163q34 26 63 26zM602 798h46q34 0 55.5 -28.5t21.5 -86.5q0 -76 39 -183h-324q39 107 39 183q0 58 21.5 86.5t56.5 28.5h45 zM250 400h700q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-13l138 -100h-950l137 100h-12q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5zM50 100h1100q21 0 35.5 -14.5t14.5 -35.5v-50h-1200v50q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe215;" d="M600 1200l300 -161v-139h-300q0 -57 18.5 -108t50 -91.5t63 -72t70 -67.5t57.5 -61h-530q-60 83 -90.5 177.5t-30.5 178.5t33 164.5t87.5 139.5t126 96.5t145.5 41.5v-98zM250 400h700q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-13l138 -100h-950l137 100 h-12q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5zM50 100h1100q21 0 35.5 -14.5t14.5 -35.5v-50h-1200v50q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe216;" d="M600 1300q41 0 70.5 -29.5t29.5 -70.5v-78q46 -26 73 -72t27 -100v-50h-400v50q0 54 27 100t73 72v78q0 41 29.5 70.5t70.5 29.5zM400 800h400q54 0 100 -27t72 -73h-172v-100h200v-100h-200v-100h200v-100h-200v-100h200q0 -83 -58.5 -141.5t-141.5 -58.5h-400 q-83 0 -141.5 58.5t-58.5 141.5v400q0 83 58.5 141.5t141.5 58.5z" />
<glyph unicode="&#xe218;" d="M150 1100h900q21 0 35.5 -14.5t14.5 -35.5v-500q0 -21 -14.5 -35.5t-35.5 -14.5h-900q-21 0 -35.5 14.5t-14.5 35.5v500q0 21 14.5 35.5t35.5 14.5zM125 400h950q10 0 17.5 -7.5t7.5 -17.5v-50q0 -10 -7.5 -17.5t-17.5 -7.5h-283l224 -224q13 -13 13 -31.5t-13 -32 t-31.5 -13.5t-31.5 13l-88 88h-524l-87 -88q-13 -13 -32 -13t-32 13.5t-13 32t13 31.5l224 224h-289q-10 0 -17.5 7.5t-7.5 17.5v50q0 10 7.5 17.5t17.5 7.5zM541 300l-100 -100h324l-100 100h-124z" />
<glyph unicode="&#xe219;" d="M200 1100h800q83 0 141.5 -58.5t58.5 -141.5v-200h-100q0 41 -29.5 70.5t-70.5 29.5h-250q-41 0 -70.5 -29.5t-29.5 -70.5h-100q0 41 -29.5 70.5t-70.5 29.5h-250q-41 0 -70.5 -29.5t-29.5 -70.5h-100v200q0 83 58.5 141.5t141.5 58.5zM100 600h1000q41 0 70.5 -29.5 t29.5 -70.5v-300h-1200v300q0 41 29.5 70.5t70.5 29.5zM300 100v-50q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v50h200zM1100 100v-50q0 -21 -14.5 -35.5t-35.5 -14.5h-100q-21 0 -35.5 14.5t-14.5 35.5v50h200z" />
<glyph unicode="&#xe221;" d="M480 1165l682 -683q31 -31 31 -75.5t-31 -75.5l-131 -131h-481l-517 518q-32 31 -32 75.5t32 75.5l295 296q31 31 75.5 31t76.5 -31zM108 794l342 -342l303 304l-341 341zM250 100h800q21 0 35.5 -14.5t14.5 -35.5v-50h-900v50q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe223;" d="M1057 647l-189 506q-8 19 -27.5 33t-40.5 14h-400q-21 0 -40.5 -14t-27.5 -33l-189 -506q-8 -19 1.5 -33t30.5 -14h625v-150q0 -21 14.5 -35.5t35.5 -14.5t35.5 14.5t14.5 35.5v150h125q21 0 30.5 14t1.5 33zM897 0h-595v50q0 21 14.5 35.5t35.5 14.5h50v50 q0 21 14.5 35.5t35.5 14.5h48v300h200v-300h47q21 0 35.5 -14.5t14.5 -35.5v-50h50q21 0 35.5 -14.5t14.5 -35.5v-50z" />
<glyph unicode="&#xe224;" d="M900 800h300v-575q0 -10 -7.5 -17.5t-17.5 -7.5h-375v591l-300 300v84q0 10 7.5 17.5t17.5 7.5h375v-400zM1200 900h-200v200zM400 600h300v-575q0 -10 -7.5 -17.5t-17.5 -7.5h-650q-10 0 -17.5 7.5t-7.5 17.5v950q0 10 7.5 17.5t17.5 7.5h375v-400zM700 700h-200v200z " />
<glyph unicode="&#xe225;" d="M484 1095h195q75 0 146 -32.5t124 -86t89.5 -122.5t48.5 -142q18 -14 35 -20q31 -10 64.5 6.5t43.5 48.5q10 34 -15 71q-19 27 -9 43q5 8 12.5 11t19 -1t23.5 -16q41 -44 39 -105q-3 -63 -46 -106.5t-104 -43.5h-62q-7 -55 -35 -117t-56 -100l-39 -234q-3 -20 -20 -34.5 t-38 -14.5h-100q-21 0 -33 14.5t-9 34.5l12 70q-49 -14 -91 -14h-195q-24 0 -65 8l-11 -64q-3 -20 -20 -34.5t-38 -14.5h-100q-21 0 -33 14.5t-9 34.5l26 157q-84 74 -128 175l-159 53q-19 7 -33 26t-14 40v50q0 21 14.5 35.5t35.5 14.5h124q11 87 56 166l-111 95 q-16 14 -12.5 23.5t24.5 9.5h203q116 101 250 101zM675 1000h-250q-10 0 -17.5 -7.5t-7.5 -17.5v-50q0 -10 7.5 -17.5t17.5 -7.5h250q10 0 17.5 7.5t7.5 17.5v50q0 10 -7.5 17.5t-17.5 7.5z" />
<glyph unicode="&#xe226;" d="M641 900l423 247q19 8 42 2.5t37 -21.5l32 -38q14 -15 12.5 -36t-17.5 -34l-139 -120h-390zM50 1100h106q67 0 103 -17t66 -71l102 -212h823q21 0 35.5 -14.5t14.5 -35.5v-50q0 -21 -14 -40t-33 -26l-737 -132q-23 -4 -40 6t-26 25q-42 67 -100 67h-300q-62 0 -106 44 t-44 106v200q0 62 44 106t106 44zM173 928h-80q-19 0 -28 -14t-9 -35v-56q0 -51 42 -51h134q16 0 21.5 8t5.5 24q0 11 -16 45t-27 51q-18 28 -43 28zM550 727q-32 0 -54.5 -22.5t-22.5 -54.5t22.5 -54.5t54.5 -22.5t54.5 22.5t22.5 54.5t-22.5 54.5t-54.5 22.5zM130 389 l152 130q18 19 34 24t31 -3.5t24.5 -17.5t25.5 -28q28 -35 50.5 -51t48.5 -13l63 5l48 -179q13 -61 -3.5 -97.5t-67.5 -79.5l-80 -69q-47 -40 -109 -35.5t-103 51.5l-130 151q-40 47 -35.5 109.5t51.5 102.5zM380 377l-102 -88q-31 -27 2 -65l37 -43q13 -15 27.5 -19.5 t31.5 6.5l61 53q19 16 14 49q-2 20 -12 56t-17 45q-11 12 -19 14t-23 -8z" />
<glyph unicode="&#xe227;" d="M625 1200h150q10 0 17.5 -7.5t7.5 -17.5v-109q79 -33 131 -87.5t53 -128.5q1 -46 -15 -84.5t-39 -61t-46 -38t-39 -21.5l-17 -6q6 0 15 -1.5t35 -9t50 -17.5t53 -30t50 -45t35.5 -64t14.5 -84q0 -59 -11.5 -105.5t-28.5 -76.5t-44 -51t-49.5 -31.5t-54.5 -16t-49.5 -6.5 t-43.5 -1v-75q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v75h-100v-75q0 -10 -7.5 -17.5t-17.5 -7.5h-150q-10 0 -17.5 7.5t-7.5 17.5v75h-175q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5h75v600h-75q-10 0 -17.5 7.5t-7.5 17.5v150 q0 10 7.5 17.5t17.5 7.5h175v75q0 10 7.5 17.5t17.5 7.5h150q10 0 17.5 -7.5t7.5 -17.5v-75h100v75q0 10 7.5 17.5t17.5 7.5zM400 900v-200h263q28 0 48.5 10.5t30 25t15 29t5.5 25.5l1 10q0 4 -0.5 11t-6 24t-15 30t-30 24t-48.5 11h-263zM400 500v-200h363q28 0 48.5 10.5 t30 25t15 29t5.5 25.5l1 10q0 4 -0.5 11t-6 24t-15 30t-30 24t-48.5 11h-363z" />
<glyph unicode="&#xe230;" d="M212 1198h780q86 0 147 -61t61 -147v-416q0 -51 -18 -142.5t-36 -157.5l-18 -66q-29 -87 -93.5 -146.5t-146.5 -59.5h-572q-82 0 -147 59t-93 147q-8 28 -20 73t-32 143.5t-20 149.5v416q0 86 61 147t147 61zM600 1045q-70 0 -132.5 -11.5t-105.5 -30.5t-78.5 -41.5 t-57 -45t-36 -41t-20.5 -30.5l-6 -12l156 -243h560l156 243q-2 5 -6 12.5t-20 29.5t-36.5 42t-57 44.5t-79 42t-105 29.5t-132.5 12zM762 703h-157l195 261z" />
<glyph unicode="&#xe231;" d="M475 1300h150q103 0 189 -86t86 -189v-500q0 -41 -42 -83t-83 -42h-450q-41 0 -83 42t-42 83v500q0 103 86 189t189 86zM700 300v-225q0 -21 -27 -48t-48 -27h-150q-21 0 -48 27t-27 48v225h300z" />
<glyph unicode="&#xe232;" d="M475 1300h96q0 -150 89.5 -239.5t239.5 -89.5v-446q0 -41 -42 -83t-83 -42h-450q-41 0 -83 42t-42 83v500q0 103 86 189t189 86zM700 300v-225q0 -21 -27 -48t-48 -27h-150q-21 0 -48 27t-27 48v225h300z" />
<glyph unicode="&#xe233;" d="M1294 767l-638 -283l-378 170l-78 -60v-224l100 -150v-199l-150 148l-150 -149v200l100 150v250q0 4 -0.5 10.5t0 9.5t1 8t3 8t6.5 6l47 40l-147 65l642 283zM1000 380l-350 -166l-350 166v147l350 -165l350 165v-147z" />
<glyph unicode="&#xe234;" d="M250 800q62 0 106 -44t44 -106t-44 -106t-106 -44t-106 44t-44 106t44 106t106 44zM650 800q62 0 106 -44t44 -106t-44 -106t-106 -44t-106 44t-44 106t44 106t106 44zM1050 800q62 0 106 -44t44 -106t-44 -106t-106 -44t-106 44t-44 106t44 106t106 44z" />
<glyph unicode="&#xe235;" d="M550 1100q62 0 106 -44t44 -106t-44 -106t-106 -44t-106 44t-44 106t44 106t106 44zM550 700q62 0 106 -44t44 -106t-44 -106t-106 -44t-106 44t-44 106t44 106t106 44zM550 300q62 0 106 -44t44 -106t-44 -106t-106 -44t-106 44t-44 106t44 106t106 44z" />
<glyph unicode="&#xe236;" d="M125 1100h950q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-950q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5zM125 700h950q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-950q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5 t17.5 7.5zM125 300h950q10 0 17.5 -7.5t7.5 -17.5v-150q0 -10 -7.5 -17.5t-17.5 -7.5h-950q-10 0 -17.5 7.5t-7.5 17.5v150q0 10 7.5 17.5t17.5 7.5z" />
<glyph unicode="&#xe237;" d="M350 1200h500q162 0 256 -93.5t94 -256.5v-500q0 -165 -93.5 -257.5t-256.5 -92.5h-500q-165 0 -257.5 92.5t-92.5 257.5v500q0 165 92.5 257.5t257.5 92.5zM900 1000h-600q-41 0 -70.5 -29.5t-29.5 -70.5v-600q0 -41 29.5 -70.5t70.5 -29.5h600q41 0 70.5 29.5 t29.5 70.5v600q0 41 -29.5 70.5t-70.5 29.5zM350 900h500q21 0 35.5 -14.5t14.5 -35.5v-300q0 -21 -14.5 -35.5t-35.5 -14.5h-500q-21 0 -35.5 14.5t-14.5 35.5v300q0 21 14.5 35.5t35.5 14.5zM400 800v-200h400v200h-400z" />
<glyph unicode="&#xe238;" d="M150 1100h1000q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-50v-200h50q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-50v-200h50q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5t-35.5 -14.5h-50v-200h50q21 0 35.5 -14.5t14.5 -35.5t-14.5 -35.5 t-35.5 -14.5h-1000q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5h50v200h-50q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5h50v200h-50q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5h50v200h-50q-21 0 -35.5 14.5t-14.5 35.5t14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe239;" d="M650 1187q87 -67 118.5 -156t0 -178t-118.5 -155q-87 66 -118.5 155t0 178t118.5 156zM300 800q124 0 212 -88t88 -212q-124 0 -212 88t-88 212zM1000 800q0 -124 -88 -212t-212 -88q0 124 88 212t212 88zM300 500q124 0 212 -88t88 -212q-124 0 -212 88t-88 212z M1000 500q0 -124 -88 -212t-212 -88q0 124 88 212t212 88zM700 199v-144q0 -21 -14.5 -35.5t-35.5 -14.5t-35.5 14.5t-14.5 35.5v142q40 -4 43 -4q17 0 57 6z" />
<glyph unicode="&#xe240;" d="M745 878l69 19q25 6 45 -12l298 -295q11 -11 15 -26.5t-2 -30.5q-5 -14 -18 -23.5t-28 -9.5h-8q1 0 1 -13q0 -29 -2 -56t-8.5 -62t-20 -63t-33 -53t-51 -39t-72.5 -14h-146q-184 0 -184 288q0 24 10 47q-20 4 -62 4t-63 -4q11 -24 11 -47q0 -288 -184 -288h-142 q-48 0 -84.5 21t-56 51t-32 71.5t-16 75t-3.5 68.5q0 13 2 13h-7q-15 0 -27.5 9.5t-18.5 23.5q-6 15 -2 30.5t15 25.5l298 296q20 18 46 11l76 -19q20 -5 30.5 -22.5t5.5 -37.5t-22.5 -31t-37.5 -5l-51 12l-182 -193h891l-182 193l-44 -12q-20 -5 -37.5 6t-22.5 31t6 37.5 t31 22.5z" />
<glyph unicode="&#xe241;" d="M1200 900h-50q0 21 -4 37t-9.5 26.5t-18 17.5t-22 11t-28.5 5.5t-31 2t-37 0.5h-200v-850q0 -22 25 -34.5t50 -13.5l25 -2v-100h-400v100q4 0 11 0.5t24 3t30 7t24 15t11 24.5v850h-200q-25 0 -37 -0.5t-31 -2t-28.5 -5.5t-22 -11t-18 -17.5t-9.5 -26.5t-4 -37h-50v300 h1000v-300zM500 450h-25q0 15 -4 24.5t-9 14.5t-17 7.5t-20 3t-25 0.5h-100v-425q0 -11 12.5 -17.5t25.5 -7.5h12v-50h-200v50q50 0 50 25v425h-100q-17 0 -25 -0.5t-20 -3t-17 -7.5t-9 -14.5t-4 -24.5h-25v150h500v-150z" />
<glyph unicode="&#xe242;" d="M1000 300v50q-25 0 -55 32q-14 14 -25 31t-16 27l-4 11l-289 747h-69l-300 -754q-18 -35 -39 -56q-9 -9 -24.5 -18.5t-26.5 -14.5l-11 -5v-50h273v50q-49 0 -78.5 21.5t-11.5 67.5l69 176h293l61 -166q13 -34 -3.5 -66.5t-55.5 -32.5v-50h312zM412 691l134 342l121 -342 h-255zM1100 150v-100q0 -21 -14.5 -35.5t-35.5 -14.5h-1000q-21 0 -35.5 14.5t-14.5 35.5v100q0 21 14.5 35.5t35.5 14.5h1000q21 0 35.5 -14.5t14.5 -35.5z" />
<glyph unicode="&#xe243;" d="M50 1200h1100q21 0 35.5 -14.5t14.5 -35.5v-1100q0 -21 -14.5 -35.5t-35.5 -14.5h-1100q-21 0 -35.5 14.5t-14.5 35.5v1100q0 21 14.5 35.5t35.5 14.5zM611 1118h-70q-13 0 -18 -12l-299 -753q-17 -32 -35 -51q-18 -18 -56 -34q-12 -5 -12 -18v-50q0 -8 5.5 -14t14.5 -6 h273q8 0 14 6t6 14v50q0 8 -6 14t-14 6q-55 0 -71 23q-10 14 0 39l63 163h266l57 -153q11 -31 -6 -55q-12 -17 -36 -17q-8 0 -14 -6t-6 -14v-50q0 -8 6 -14t14 -6h313q8 0 14 6t6 14v50q0 7 -5.5 13t-13.5 7q-17 0 -42 25q-25 27 -40 63h-1l-288 748q-5 12 -19 12zM639 611 h-197l103 264z" />
<glyph unicode="&#xe244;" d="M1200 1100h-1200v100h1200v-100zM50 1000h400q21 0 35.5 -14.5t14.5 -35.5v-900q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v900q0 21 14.5 35.5t35.5 14.5zM650 1000h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400 q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5zM700 900v-300h300v300h-300z" />
<glyph unicode="&#xe245;" d="M50 1200h400q21 0 35.5 -14.5t14.5 -35.5v-900q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v900q0 21 14.5 35.5t35.5 14.5zM650 700h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v400 q0 21 14.5 35.5t35.5 14.5zM700 600v-300h300v300h-300zM1200 0h-1200v100h1200v-100z" />
<glyph unicode="&#xe246;" d="M50 1000h400q21 0 35.5 -14.5t14.5 -35.5v-350h100v150q0 21 14.5 35.5t35.5 14.5h400q21 0 35.5 -14.5t14.5 -35.5v-150h100v-100h-100v-150q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v150h-100v-350q0 -21 -14.5 -35.5t-35.5 -14.5h-400 q-21 0 -35.5 14.5t-14.5 35.5v800q0 21 14.5 35.5t35.5 14.5zM700 700v-300h300v300h-300z" />
<glyph unicode="&#xe247;" d="M100 0h-100v1200h100v-1200zM250 1100h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5zM300 1000v-300h300v300h-300zM250 500h900q21 0 35.5 -14.5t14.5 -35.5v-400 q0 -21 -14.5 -35.5t-35.5 -14.5h-900q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe248;" d="M600 1100h150q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-150v-100h450q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-900q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5h350v100h-150q-21 0 -35.5 14.5 t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5h150v100h100v-100zM400 1000v-300h300v300h-300z" />
<glyph unicode="&#xe249;" d="M1200 0h-100v1200h100v-1200zM550 1100h400q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-400q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5zM600 1000v-300h300v300h-300zM50 500h900q21 0 35.5 -14.5t14.5 -35.5v-400 q0 -21 -14.5 -35.5t-35.5 -14.5h-900q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5z" />
<glyph unicode="&#xe250;" d="M865 565l-494 -494q-23 -23 -41 -23q-14 0 -22 13.5t-8 38.5v1000q0 25 8 38.5t22 13.5q18 0 41 -23l494 -494q14 -14 14 -35t-14 -35z" />
<glyph unicode="&#xe251;" d="M335 635l494 494q29 29 50 20.5t21 -49.5v-1000q0 -41 -21 -49.5t-50 20.5l-494 494q-14 14 -14 35t14 35z" />
<glyph unicode="&#xe252;" d="M100 900h1000q41 0 49.5 -21t-20.5 -50l-494 -494q-14 -14 -35 -14t-35 14l-494 494q-29 29 -20.5 50t49.5 21z" />
<glyph unicode="&#xe253;" d="M635 865l494 -494q29 -29 20.5 -50t-49.5 -21h-1000q-41 0 -49.5 21t20.5 50l494 494q14 14 35 14t35 -14z" />
<glyph unicode="&#xe254;" d="M700 741v-182l-692 -323v221l413 193l-413 193v221zM1200 0h-800v200h800v-200z" />
<glyph unicode="&#xe255;" d="M1200 900h-200v-100h200v-100h-300v300h200v100h-200v100h300v-300zM0 700h50q0 21 4 37t9.5 26.5t18 17.5t22 11t28.5 5.5t31 2t37 0.5h100v-550q0 -22 -25 -34.5t-50 -13.5l-25 -2v-100h400v100q-4 0 -11 0.5t-24 3t-30 7t-24 15t-11 24.5v550h100q25 0 37 -0.5t31 -2 t28.5 -5.5t22 -11t18 -17.5t9.5 -26.5t4 -37h50v300h-800v-300z" />
<glyph unicode="&#xe256;" d="M800 700h-50q0 21 -4 37t-9.5 26.5t-18 17.5t-22 11t-28.5 5.5t-31 2t-37 0.5h-100v-550q0 -22 25 -34.5t50 -14.5l25 -1v-100h-400v100q4 0 11 0.5t24 3t30 7t24 15t11 24.5v550h-100q-25 0 -37 -0.5t-31 -2t-28.5 -5.5t-22 -11t-18 -17.5t-9.5 -26.5t-4 -37h-50v300 h800v-300zM1100 200h-200v-100h200v-100h-300v300h200v100h-200v100h300v-300z" />
<glyph unicode="&#xe257;" d="M701 1098h160q16 0 21 -11t-7 -23l-464 -464l464 -464q12 -12 7 -23t-21 -11h-160q-13 0 -23 9l-471 471q-7 8 -7 18t7 18l471 471q10 9 23 9z" />
<glyph unicode="&#xe258;" d="M339 1098h160q13 0 23 -9l471 -471q7 -8 7 -18t-7 -18l-471 -471q-10 -9 -23 -9h-160q-16 0 -21 11t7 23l464 464l-464 464q-12 12 -7 23t21 11z" />
<glyph unicode="&#xe259;" d="M1087 882q11 -5 11 -21v-160q0 -13 -9 -23l-471 -471q-8 -7 -18 -7t-18 7l-471 471q-9 10 -9 23v160q0 16 11 21t23 -7l464 -464l464 464q12 12 23 7z" />
<glyph unicode="&#xe260;" d="M618 993l471 -471q9 -10 9 -23v-160q0 -16 -11 -21t-23 7l-464 464l-464 -464q-12 -12 -23 -7t-11 21v160q0 13 9 23l471 471q8 7 18 7t18 -7z" />
<glyph unicode="&#xf8ff;" d="M1000 1200q0 -124 -88 -212t-212 -88q0 124 88 212t212 88zM450 1000h100q21 0 40 -14t26 -33l79 -194q5 1 16 3q34 6 54 9.5t60 7t65.5 1t61 -10t56.5 -23t42.5 -42t29 -64t5 -92t-19.5 -121.5q-1 -7 -3 -19.5t-11 -50t-20.5 -73t-32.5 -81.5t-46.5 -83t-64 -70 t-82.5 -50q-13 -5 -42 -5t-65.5 2.5t-47.5 2.5q-14 0 -49.5 -3.5t-63 -3.5t-43.5 7q-57 25 -104.5 78.5t-75 111.5t-46.5 112t-26 90l-7 35q-15 63 -18 115t4.5 88.5t26 64t39.5 43.5t52 25.5t58.5 13t62.5 2t59.5 -4.5t55.5 -8l-147 192q-12 18 -5.5 30t27.5 12z" />
<glyph unicode="&#x1f511;" d="M250 1200h600q21 0 35.5 -14.5t14.5 -35.5v-400q0 -21 -14.5 -35.5t-35.5 -14.5h-150v-500l-255 -178q-19 -9 -32 -1t-13 29v650h-150q-21 0 -35.5 14.5t-14.5 35.5v400q0 21 14.5 35.5t35.5 14.5zM400 1100v-100h300v100h-300z" />
<glyph unicode="&#x1f6aa;" d="M250 1200h750q39 0 69.5 -40.5t30.5 -84.5v-933l-700 -117v950l600 125h-700v-1000h-100v1025q0 23 15.5 49t34.5 26zM500 525v-100l100 20v100z" />
</font>
</defs></svg>

After

Width:  |  Height:  |  Size: 106 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

+93
View File
@@ -0,0 +1,93 @@
function getSearchTerm()
{
var sPageURL = window.location.search.substring(1);
var sURLVariables = sPageURL.split('&');
for (var i = 0; i < sURLVariables.length; i++)
{
var sParameterName = sURLVariables[i].split('=');
if (sParameterName[0] == 'q')
{
return sParameterName[1];
}
}
}
$(document).ready(function() {
$("img").each(function (idx, elm) {
var x = elm.width, y = elm.height;
elm.width = x * 0.666;
elm.height = y * 0.666;
});
var search_term = getSearchTerm(),
$search_modal = $('#mkdocs_search_modal'),
$keyboard_modal = $('#mkdocs_keyboard_modal');
if(search_term){
$search_modal.modal();
}
// make sure search input gets autofocus everytime modal opens.
$search_modal.on('shown.bs.modal', function () {
$search_modal.find('#mkdocs-search-query').focus();
});
// Keyboard navigation
document.addEventListener("keydown", function(e) {
if ($(e.target).is(':input')) return true;
var key = e.which || e.keyCode || window.event && window.event.keyCode;
var page;
switch (key) {
case 39: // right arrow
page = $('[role="navigation"] a:contains(Next):first').prop('href');
break;
case 37: // left arrow
page = $('[role="navigation"] a:contains(Previous):first').prop('href');
break;
case 83: // s
e.preventDefault();
$keyboard_modal.modal('hide');
$search_modal.modal('show');
$search_modal.find('#mkdocs-search-query').focus();
break;
case 191: // ?
$keyboard_modal.modal('show');
break;
default: break;
}
if (page) {
$keyboard_modal.modal('hide');
window.location.href = page;
}
});
// Highlight.js
hljs.initHighlightingOnLoad();
$('table').addClass('table table-striped table-hover');
// Improve the scrollspy behaviour when users click on a TOC item.
$(".bs-sidenav a").on("click", function() {
var clicked = this;
setTimeout(function() {
var active = $('.nav li.active a');
active = active[active.length - 1];
if (clicked !== active) {
$(active).parent().removeClass("active");
$(clicked).parent().addClass("active");
}
}, 50);
});
});
$('body').scrollspy({
target: '.bs-sidebar',
offset: 100
});
/* Prevent disabled links from causing a page reload */
$("li.disabled a").click(function() {
event.preventDefault();
});
+7
View File
@@ -0,0 +1,7 @@
/*!
* Bootstrap v3.0.3 (http://getbootstrap.com)
* Copyright 2013 Twitter, Inc.
* Licensed under http://www.apache.org/licenses/LICENSE-2.0
*/
if("undefined"==typeof jQuery)throw new Error("Bootstrap requires jQuery");+function(a){"use strict";function b(){var a=document.createElement("bootstrap"),b={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};for(var c in b)if(void 0!==a.style[c])return{end:b[c]}}a.fn.emulateTransitionEnd=function(b){var c=!1,d=this;a(this).one(a.support.transition.end,function(){c=!0});var e=function(){c||a(d).trigger(a.support.transition.end)};return setTimeout(e,b),this},a(function(){a.support.transition=b()})}(jQuery),+function(a){"use strict";var b='[data-dismiss="alert"]',c=function(c){a(c).on("click",b,this.close)};c.prototype.close=function(b){function c(){f.trigger("closed.bs.alert").remove()}var d=a(this),e=d.attr("data-target");e||(e=d.attr("href"),e=e&&e.replace(/.*(?=#[^\s]*$)/,""));var f=a(e);b&&b.preventDefault(),f.length||(f=d.hasClass("alert")?d:d.parent()),f.trigger(b=a.Event("close.bs.alert")),b.isDefaultPrevented()||(f.removeClass("in"),a.support.transition&&f.hasClass("fade")?f.one(a.support.transition.end,c).emulateTransitionEnd(150):c())};var d=a.fn.alert;a.fn.alert=function(b){return this.each(function(){var d=a(this),e=d.data("bs.alert");e||d.data("bs.alert",e=new c(this)),"string"==typeof b&&e[b].call(d)})},a.fn.alert.Constructor=c,a.fn.alert.noConflict=function(){return a.fn.alert=d,this},a(document).on("click.bs.alert.data-api",b,c.prototype.close)}(jQuery),+function(a){"use strict";var b=function(c,d){this.$element=a(c),this.options=a.extend({},b.DEFAULTS,d)};b.DEFAULTS={loadingText:"loading..."},b.prototype.setState=function(a){var b="disabled",c=this.$element,d=c.is("input")?"val":"html",e=c.data();a+="Text",e.resetText||c.data("resetText",c[d]()),c[d](e[a]||this.options[a]),setTimeout(function(){"loadingText"==a?c.addClass(b).attr(b,b):c.removeClass(b).removeAttr(b)},0)},b.prototype.toggle=function(){var a=this.$element.closest('[data-toggle="buttons"]'),b=!0;if(a.length){var c=this.$element.find("input");"radio"===c.prop("type")&&(c.prop("checked")&&this.$element.hasClass("active")?b=!1:a.find(".active").removeClass("active")),b&&c.prop("checked",!this.$element.hasClass("active")).trigger("change")}b&&this.$element.toggleClass("active")};var c=a.fn.button;a.fn.button=function(c){return this.each(function(){var d=a(this),e=d.data("bs.button"),f="object"==typeof c&&c;e||d.data("bs.button",e=new b(this,f)),"toggle"==c?e.toggle():c&&e.setState(c)})},a.fn.button.Constructor=b,a.fn.button.noConflict=function(){return a.fn.button=c,this},a(document).on("click.bs.button.data-api","[data-toggle^=button]",function(b){var c=a(b.target);c.hasClass("btn")||(c=c.closest(".btn")),c.button("toggle"),b.preventDefault()})}(jQuery),+function(a){"use strict";var b=function(b,c){this.$element=a(b),this.$indicators=this.$element.find(".carousel-indicators"),this.options=c,this.paused=this.sliding=this.interval=this.$active=this.$items=null,"hover"==this.options.pause&&this.$element.on("mouseenter",a.proxy(this.pause,this)).on("mouseleave",a.proxy(this.cycle,this))};b.DEFAULTS={interval:5e3,pause:"hover",wrap:!0},b.prototype.cycle=function(b){return b||(this.paused=!1),this.interval&&clearInterval(this.interval),this.options.interval&&!this.paused&&(this.interval=setInterval(a.proxy(this.next,this),this.options.interval)),this},b.prototype.getActiveIndex=function(){return this.$active=this.$element.find(".item.active"),this.$items=this.$active.parent().children(),this.$items.index(this.$active)},b.prototype.to=function(b){var c=this,d=this.getActiveIndex();return b>this.$items.length-1||0>b?void 0:this.sliding?this.$element.one("slid.bs.carousel",function(){c.to(b)}):d==b?this.pause().cycle():this.slide(b>d?"next":"prev",a(this.$items[b]))},b.prototype.pause=function(b){return b||(this.paused=!0),this.$element.find(".next, .prev").length&&a.support.transition.end&&(this.$element.trigger(a.support.transition.end),this.cycle(!0)),this.interval=clearInterval(this.interval),this},b.prototype.next=function(){return this.sliding?void 0:this.slide("next")},b.prototype.prev=function(){return this.sliding?void 0:this.slide("prev")},b.prototype.slide=function(b,c){var d=this.$element.find(".item.active"),e=c||d[b](),f=this.interval,g="next"==b?"left":"right",h="next"==b?"first":"last",i=this;if(!e.length){if(!this.options.wrap)return;e=this.$element.find(".item")[h]()}this.sliding=!0,f&&this.pause();var j=a.Event("slide.bs.carousel",{relatedTarget:e[0],direction:g});if(!e.hasClass("active")){if(this.$indicators.length&&(this.$indicators.find(".active").removeClass("active"),this.$element.one("slid.bs.carousel",function(){var b=a(i.$indicators.children()[i.getActiveIndex()]);b&&b.addClass("active")})),a.support.transition&&this.$element.hasClass("slide")){if(this.$element.trigger(j),j.isDefaultPrevented())return;e.addClass(b),e[0].offsetWidth,d.addClass(g),e.addClass(g),d.one(a.support.transition.end,function(){e.removeClass([b,g].joiLine truncated
@@ -0,0 +1,2 @@
!function(e){"undefined"!=typeof exports?e(exports):(window.hljs=e({}),"function"==typeof define&&define.amd&&define([],function(){return window.hljs}))}(function(e){function n(e){return e.replace(/&/gm,"&amp;").replace(/</gm,"&lt;").replace(/>/gm,"&gt;")}function t(e){return e.nodeName.toLowerCase()}function r(e,n){var t=e&&e.exec(n);return t&&0==t.index}function a(e){var n=(e.className+" "+(e.parentNode?e.parentNode.className:"")).split(/\s+/);return n=n.map(function(e){return e.replace(/^lang(uage)?-/,"")}),n.filter(function(e){return N(e)||/no(-?)highlight|plain|text/.test(e)})[0]}function i(e,n){var t,r={};for(t in e)r[t]=e[t];if(n)for(t in n)r[t]=n[t];return r}function o(e){var n=[];return function r(e,a){for(var i=e.firstChild;i;i=i.nextSibling)3==i.nodeType?a+=i.nodeValue.length:1==i.nodeType&&(n.push({event:"start",offset:a,node:i}),a=r(i,a),t(i).match(/br|hr|img|input/)||n.push({event:"stop",offset:a,node:i}));return a}(e,0),n}function u(e,r,a){function i(){return e.length&&r.length?e[0].offset!=r[0].offset?e[0].offset<r[0].offset?e:r:"start"==r[0].event?e:r:e.length?e:r}function o(e){function r(e){return" "+e.nodeName+'="'+n(e.value)+'"'}l+="<"+t(e)+Array.prototype.map.call(e.attributes,r).join("")+">"}function u(e){l+="</"+t(e)+">"}function c(e){("start"==e.event?o:u)(e.node)}for(var s=0,l="",f=[];e.length||r.length;){var g=i();if(l+=n(a.substr(s,g[0].offset-s)),s=g[0].offset,g==e){f.reverse().forEach(u);do c(g.splice(0,1)[0]),g=i();while(g==e&&g.length&&g[0].offset==s);f.reverse().forEach(o)}else"start"==g[0].event?f.push(g[0].node):f.pop(),c(g.splice(0,1)[0])}return l+n(a.substr(s))}function c(e){function n(e){return e&&e.source||e}function t(t,r){return new RegExp(n(t),"m"+(e.cI?"i":"")+(r?"g":""))}function r(a,o){if(!a.compiled){if(a.compiled=!0,a.k=a.k||a.bK,a.k){var u={},c=function(n,t){e.cI&&(t=t.toLowerCase()),t.split(" ").forEach(function(e){var t=e.split("|");u[t[0]]=[n,t[1]?Number(t[1]):1]})};"string"==typeof a.k?c("keyword",a.k):Object.keys(a.k).forEach(function(e){c(e,a.k[e])}),a.k=u}a.lR=t(a.l||/\b\w+\b/,!0),o&&(a.bK&&(a.b="\\b("+a.bK.split(" ").join("|")+")\\b"),a.b||(a.b=/\B|\b/),a.bR=t(a.b),a.e||a.eW||(a.e=/\B|\b/),a.e&&(a.eR=t(a.e)),a.tE=n(a.e)||"",a.eW&&o.tE&&(a.tE+=(a.e?"|":"")+o.tE)),a.i&&(a.iR=t(a.i)),void 0===a.r&&(a.r=1),a.c||(a.c=[]);var s=[];a.c.forEach(function(e){e.v?e.v.forEach(function(n){s.push(i(e,n))}):s.push("self"==e?a:e)}),a.c=s,a.c.forEach(function(e){r(e,a)}),a.starts&&r(a.starts,o);var l=a.c.map(function(e){return e.bK?"\\.?("+e.b+")\\.?":e.b}).concat([a.tE,a.i]).map(n).filter(Boolean);a.t=l.length?t(l.join("|"),!0):{exec:function(){return null}}}}r(e)}function s(e,t,a,i){function o(e,n){for(var t=0;t<n.c.length;t++)if(r(n.c[t].bR,e))return n.c[t]}function u(e,n){if(r(e.eR,n)){for(;e.endsParent&&e.parent;)e=e.parent;return e}return e.eW?u(e.parent,n):void 0}function f(e,n){return!a&&r(n.iR,e)}function g(e,n){var t=E.cI?n[0].toLowerCase():n[0];return e.k.hasOwnProperty(t)&&e.k[t]}function p(e,n,t,r){var a=r?"":x.classPrefix,i='<span class="'+a,o=t?"":"</span>";return i+=e+'">',i+n+o}function d(){if(!L.k)return n(y);var e="",t=0;L.lR.lastIndex=0;for(var r=L.lR.exec(y);r;){e+=n(y.substr(t,r.index-t));var a=g(L,r);a?(B+=a[1],e+=p(a[0],n(r[0]))):e+=n(r[0]),t=L.lR.lastIndex,r=L.lR.exec(y)}return e+n(y.substr(t))}function h(){if(L.sL&&!w[L.sL])return n(y);var e=L.sL?s(L.sL,y,!0,M[L.sL]):l(y);return L.r>0&&(B+=e.r),"continuous"==L.subLanguageMode&&(M[L.sL]=e.top),p(e.language,e.value,!1,!0)}function b(){return void 0!==L.sL?h():d()}function v(e,t){var r=e.cN?p(e.cN,"",!0):"";e.rB?(k+=r,y=""):e.eB?(k+=n(t)+r,y=""):(k+=r,y=t),L=Object.create(e,{parent:{value:L}})}function m(e,t){if(y+=e,void 0===t)return k+=b(),0;var r=o(t,L);if(r)return k+=b(),v(r,t),r.rB?0:t.length;var a=u(L,t);if(a){var i=L;i.rE||i.eE||(y+=t),k+=b();do L.cN&&(k+="</span>"),B+=L.r,L=L.parent;while(L!=a.parent);return i.eE&&(k+=n(t)),y="",a.starts&&v(a.starts,""),i.rE?0:t.length}if(f(t,L))throw new Error('Illegal lexeme "'+t+'" for mode "'+(L.cN||"<unnamed>")+'"');return y+=t,t.length||1}var E=N(e);if(!E)throw new Error('Unknown language: "'+e+'"');c(E);var R,L=i||E,M={},k="";for(R=L;R!=E;R=R.parent)R.cN&&(k=p(R.cN,"",!0)+k);var y="",B=0;try{for(var C,j,I=0;;){if(L.t.lastIndex=I,C=L.t.exec(t),!C)break;j=m(t.substr(I,C.index-I),C[0]),I=C.index+j}for(m(t.substr(I)),R=L;R.parent;R=R.parent)R.cN&&(k+="</span>");return{r:B,value:k,language:e,top:L}}catch(S){if(-1!=S.message.indexOf("Illegal"))return{r:0,value:n(t)};throw S}}function l(e,t){t=t||x.languages||Object.keys(w);var r={r:0,value:n(e)},a=r;return t.forEach(function(n){if(N(n)){var t=s(n,e,!1);t.language=n,t.r>a.r&&(a=t),t.r>r.r&&(a=r,r=t)}}),a.language&&(r.second_best=a),r}function f(e){return x.tabReplace&&(e=e.replace(/^((<[^>]+>|\t)+)/gm,function(e,n){return n.replace(/\t/g,x.tabReplace)})),x.useBR&&(e=e.replace(/\n/g,"<br>")),e}function g(e,n,t){var r=n?E[n]:t,a=[e.trim()];return e.match(/\bhljs\b/)||a.push("hljs"),-1===e.indexOf(r)&&a.pushLine truncated
c:[{cN:"comment",b:/\(\*/,e:/\*\)/},e.ASM,e.QSM,e.CNM,{cN:"list",b:/\{/,e:/\}/,i:/:/}]}});hljs.registerLanguage("fsharp",function(e){var t={b:"<",e:">",c:[e.inherit(e.TM,{b:/'[a-zA-Z0-9_]+/})]};return{aliases:["fs"],k:"yield! return! let! do!abstract and as assert base begin class default delegate do done downcast downto elif else end exception extern false finally for fun function global if in inherit inline interface internal lazy let match member module mutable namespace new null of open or override private public rec return sig static struct then to true try type upcast use val void when while with yield",c:[{cN:"string",b:'@"',e:'"',c:[{b:'""'}]},{cN:"string",b:'"""',e:'"""'},e.C("\\(\\*","\\*\\)"),{cN:"class",bK:"type",e:"\\(|=|$",eE:!0,c:[e.UTM,t]},{cN:"annotation",b:"\\[<",e:">\\]",r:10},{cN:"attribute",b:"\\B('[A-Za-z])\\b",c:[e.BE]},e.CLCM,e.inherit(e.QSM,{i:null}),e.CNM]}});hljs.registerLanguage("verilog",function(e){return{aliases:["v"],cI:!0,k:{keyword:"always and assign begin buf bufif0 bufif1 case casex casez cmos deassign default defparam disable edge else end endcase endfunction endmodule endprimitive endspecify endtable endtask event for force forever fork function if ifnone initial inout input join macromodule module nand negedge nmos nor not notif0 notif1 or output parameter pmos posedge primitive pulldown pullup rcmos release repeat rnmos rpmos rtran rtranif0 rtranif1 specify specparam table task timescale tran tranif0 tranif1 wait while xnor xor",typename:"highz0 highz1 integer large medium pull0 pull1 real realtime reg scalared signed small strong0 strong1 supply0 supply0 supply1 supply1 time tri tri0 tri1 triand trior trireg vectored wand weak0 weak1 wire wor"},c:[e.CBCM,e.CLCM,e.QSM,{cN:"number",b:"\\b(\\d+'(b|h|o|d|B|H|O|D))?[0-9xzXZ]+",c:[e.BE],r:0},{cN:"typename",b:"\\.\\w+",r:0},{cN:"value",b:"#\\((?!parameter).+\\)"},{cN:"keyword",b:"\\+|-|\\*|/|%|<|>|=|#|`|\\!|&|\\||@|:|\\^|~|\\{|\\}",r:0}]}});hljs.registerLanguage("dos",function(e){var r=e.C(/@?rem\b/,/$/,{r:10}),t={cN:"label",b:"^\\s*[A-Za-z._?][A-Za-z0-9_$#@~.?]*(:|\\s+label)",r:0};return{aliases:["bat","cmd"],cI:!0,k:{flow:"if else goto for in do call exit not exist errorlevel defined",operator:"equ neq lss leq gtr geq",keyword:"shift cd dir echo setlocal endlocal set pause copy",stream:"prn nul lpt3 lpt2 lpt1 con com4 com3 com2 com1 aux",winutils:"ping net ipconfig taskkill xcopy ren del",built_in:"append assoc at attrib break cacls cd chcp chdir chkdsk chkntfs cls cmd color comp compact convert date dir diskcomp diskcopy doskey erase fs find findstr format ftype graftabl help keyb label md mkdir mode more move path pause print popd pushd promt rd recover rem rename replace restore rmdir shiftsort start subst time title tree type ver verify vol"},c:[{cN:"envvar",b:/%%[^ ]|%[^ ]+?%|![^ ]+?!/},{cN:"function",b:t.b,e:"goto:eof",c:[e.inherit(e.TM,{b:"([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*"}),r]},{cN:"number",b:"\\b\\d+",r:0},r]}});hljs.registerLanguage("gherkin",function(e){return{aliases:["feature"],k:"Feature Background Ability Business Need Scenario Scenarios Scenario Outline Scenario Template Examples Given And Then But When",c:[{cN:"keyword",b:"\\*"},e.C("@[^@\r\n ]+","$"),{cN:"string",b:"\\|",e:"\\$"},{cN:"variable",b:"<",e:">"},e.HCM,{cN:"string",b:'"""',e:'"""'},e.QSM]}});hljs.registerLanguage("xml",function(t){var e="[A-Za-z0-9\\._:-]+",s={b:/<\?(php)?(?!\w)/,e:/\?>/,sL:"php",subLanguageMode:"continuous"},c={eW:!0,i:/</,r:0,c:[s,{cN:"attribute",b:e,r:0},{b:"=",r:0,c:[{cN:"value",c:[s],v:[{b:/"/,e:/"/},{b:/'/,e:/'/},{b:/[^\s\/>]+/}]}]}]};return{aliases:["html","xhtml","rss","atom","xsl","plist"],cI:!0,c:[{cN:"doctype",b:"<!DOCTYPE",e:">",r:10,c:[{b:"\\[",e:"\\]"}]},t.C("<!--","-->",{r:10}),{cN:"cdata",b:"<\\!\\[CDATA\\[",e:"\\]\\]>",r:10},{cN:"tag",b:"<style(?=\\s|>|$)",e:">",k:{title:"style"},c:[c],starts:{e:"</style>",rE:!0,sL:"css"}},{cN:"tag",b:"<script(?=\\s|>|$)",e:">",k:{title:"script"},c:[c],starts:{e:"</script>",rE:!0,sL:""}},s,{cN:"pi",b:/<\?\w+/,e:/\?>/,r:10},{cN:"tag",b:"</?",e:"/?>",c:[{cN:"title",b:/[^ \/><\n\t]+/,r:0},c]}]}});hljs.registerLanguage("autohotkey",function(e){var r={cN:"escape",b:"`[\\s\\S]"},c=e.C(";","$",{r:0}),n=[{cN:"built_in",b:"A_[a-zA-Z0-9]+"},{cN:"built_in",bK:"ComSpec Clipboard ClipboardAll ErrorLevel"}];return{cI:!0,k:{keyword:"Break Continue Else Gosub If Loop Return While",literal:"A true false NOT AND OR"},c:n.concat([r,e.inherit(e.QSM,{c:[r]}),c,{cN:"number",b:e.NR,r:0},{cN:"var_expand",b:"%",e:"%",i:"\\n",c:[r]},{cN:"label",c:[r],v:[{b:'^[^\\n";]+::(?!=)'},{b:'^[^\\n";]+:(?!=)',r:0}]},{b:",\\s*,",r:10}])}});hljs.registerLanguage("r",function(e){var r="([a-zA-Z]|\\.[a-zA-Z.])[a-zA-Z0-9._]*";return{c:[e.HCM,{b:r,l:r,k:{keyword:"function if in break next repeat else for return switch while try tryCatch stop warning require library attach detach source setMethod setGeneric setGroupGeneric setClass ...",literal:"NULL NA TRUE FALSE T F Inf NaN NA_integer_|10 NA_real_|1Line truncated
+6
View File
@@ -0,0 +1,6 @@
/*! jQuery v1.10.2 | (c) 2005, 2013 jQuery Foundation, Inc. | jquery.org/license
//@ sourceMappingURL=jquery-1.10.2.min.map
*/
(function(e,t){var n,r,i=typeof t,o=e.location,a=e.document,s=a.documentElement,l=e.jQuery,u=e.$,c={},p=[],f="1.10.2",d=p.concat,h=p.push,g=p.slice,m=p.indexOf,y=c.toString,v=c.hasOwnProperty,b=f.trim,x=function(e,t){return new x.fn.init(e,t,r)},w=/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source,T=/\S+/g,C=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,N=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,k=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,E=/^[\],:{}\s]*$/,S=/(?:^|:|,)(?:\s*\[)+/g,A=/\\(?:["\\\/bfnrt]|u[\da-fA-F]{4})/g,j=/"[^"\\\r\n]*"|true|false|null|-?(?:\d+\.|)\d+(?:[eE][+-]?\d+|)/g,D=/^-ms-/,L=/-([\da-z])/gi,H=function(e,t){return t.toUpperCase()},q=function(e){(a.addEventListener||"load"===e.type||"complete"===a.readyState)&&(_(),x.ready())},_=function(){a.addEventListener?(a.removeEventListener("DOMContentLoaded",q,!1),e.removeEventListener("load",q,!1)):(a.detachEvent("onreadystatechange",q),e.detachEvent("onload",q))};x.fn=x.prototype={jquery:f,constructor:x,init:function(e,n,r){var i,o;if(!e)return this;if("string"==typeof e){if(i="<"===e.charAt(0)&&">"===e.charAt(e.length-1)&&e.length>=3?[null,e,null]:N.exec(e),!i||!i[1]&&n)return!n||n.jquery?(n||r).find(e):this.constructor(n).find(e);if(i[1]){if(n=n instanceof x?n[0]:n,x.merge(this,x.parseHTML(i[1],n&&n.nodeType?n.ownerDocument||n:a,!0)),k.test(i[1])&&x.isPlainObject(n))for(i in n)x.isFunction(this[i])?this[i](n[i]):this.attr(i,n[i]);return this}if(o=a.getElementById(i[2]),o&&o.parentNode){if(o.id!==i[2])return r.find(e);this.length=1,this[0]=o}return this.context=a,this.selector=e,this}return e.nodeType?(this.context=this[0]=e,this.length=1,this):x.isFunction(e)?r.ready(e):(e.selector!==t&&(this.selector=e.selector,this.context=e.context),x.makeArray(e,this))},selector:"",length:0,toArray:function(){return g.call(this)},get:function(e){return null==e?this.toArray():0>e?this[this.length+e]:this[e]},pushStack:function(e){var t=x.merge(this.constructor(),e);return t.prevObject=this,t.context=this.context,t},each:function(e,t){return x.each(this,e,t)},ready:function(e){return x.ready.promise().done(e),this},slice:function(){return this.pushStack(g.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(0>e?t:0);return this.pushStack(n>=0&&t>n?[this[n]]:[])},map:function(e){return this.pushStack(x.map(this,function(t,n){return e.call(t,n,t)}))},end:function(){return this.prevObject||this.constructor(null)},push:h,sort:[].sort,splice:[].splice},x.fn.init.prototype=x.fn,x.extend=x.fn.extend=function(){var e,n,r,i,o,a,s=arguments[0]||{},l=1,u=arguments.length,c=!1;for("boolean"==typeof s&&(c=s,s=arguments[1]||{},l=2),"object"==typeof s||x.isFunction(s)||(s={}),u===l&&(s=this,--l);u>l;l++)if(null!=(o=arguments[l]))for(i in o)e=s[i],r=o[i],s!==r&&(c&&r&&(x.isPlainObject(r)||(n=x.isArray(r)))?(n?(n=!1,a=e&&x.isArray(e)?e:[]):a=e&&x.isPlainObject(e)?e:{},s[i]=x.extend(c,a,r)):r!==t&&(s[i]=r));return s},x.extend({expando:"jQuery"+(f+Math.random()).replace(/\D/g,""),noConflict:function(t){return e.$===x&&(e.$=u),t&&e.jQuery===x&&(e.jQuery=l),x},isReady:!1,readyWait:1,holdReady:function(e){e?x.readyWait++:x.ready(!0)},ready:function(e){if(e===!0?!--x.readyWait:!x.isReady){if(!a.body)return setTimeout(x.ready);x.isReady=!0,e!==!0&&--x.readyWait>0||(n.resolveWith(a,[x]),x.fn.trigger&&x(a).trigger("ready").off("ready"))}},isFunction:function(e){return"function"===x.type(e)},isArray:Array.isArray||function(e){return"array"===x.type(e)},isWindow:function(e){return null!=e&&e==e.window},isNumeric:function(e){return!isNaN(parseFloat(e))&&isFinite(e)},type:function(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?c[y.call(e)]||"object":typeof e},isPlainObject:function(e){var n;if(!e||"object"!==x.type(e)||e.nodeType||x.isWindow(e))return!1;try{if(e.constructor&&!v.call(e,"constructor")&&!v.call(e.constructor.prototype,"isPrototypeOf"))return!1}catch(r){return!1}if(x.support.ownLast)for(n in e)return v.call(e,n);for(n in e);return n===t||v.call(e,n)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},error:function(e){throw Error(e)},parseHTML:function(e,t,n){if(!e||"string"!=typeof e)return null;"boolean"==typeof t&&(n=t,t=!1),t=t||a;var r=k.exec(e),i=!n&&[];return r?[t.createElement(r[1])]:(r=x.buildFragment([e],t,i),i&&x(i).remove(),x.merge([],r.childNodes))},parseJSON:function(n){return e.JSON&&e.JSON.parse?e.JSON.parse(n):null===n?n:"string"==typeof n&&(n=x.trim(n),n&&E.test(n.replace(A,"@").replace(j,"]").replace(S,"")))?Function("return "+n)():(x.error("Invalid JSON: "+n),t)},parseXML:function(n){var r,i;if(!n||"string"!=typeof n)return null;try{e.DOMParser?(i=new DOMParser,r=i.parseFromString(n,"text/xml")):(r=new ActiveXObject("Microsoft.XMLDOM"),r.async="false",r.loadXML(n))}catch(o){r=t}return r&&r.documentElement&&!r.getElementsByTagName("parsererror").length||x.error("Invalid XML: "+n),r},noop:function(){},globalEval:function(t){t&&x.trim(t)&&(e.execScript||function(t){e.eval.call(eLine truncated
}({});var B=/(?:\{[\s\S]*\}|\[[\s\S]*\])$/,P=/([A-Z])/g;function R(e,n,r,i){if(x.acceptData(e)){var o,a,s=x.expando,l=e.nodeType,u=l?x.cache:e,c=l?e[s]:e[s]&&s;if(c&&u[c]&&(i||u[c].data)||r!==t||"string"!=typeof n)return c||(c=l?e[s]=p.pop()||x.guid++:s),u[c]||(u[c]=l?{}:{toJSON:x.noop}),("object"==typeof n||"function"==typeof n)&&(i?u[c]=x.extend(u[c],n):u[c].data=x.extend(u[c].data,n)),a=u[c],i||(a.data||(a.data={}),a=a.data),r!==t&&(a[x.camelCase(n)]=r),"string"==typeof n?(o=a[n],null==o&&(o=a[x.camelCase(n)])):o=a,o}}function W(e,t,n){if(x.acceptData(e)){var r,i,o=e.nodeType,a=o?x.cache:e,s=o?e[x.expando]:x.expando;if(a[s]){if(t&&(r=n?a[s]:a[s].data)){x.isArray(t)?t=t.concat(x.map(t,x.camelCase)):t in r?t=[t]:(t=x.camelCase(t),t=t in r?[t]:t.split(" ")),i=t.length;while(i--)delete r[t[i]];if(n?!I(r):!x.isEmptyObject(r))return}(n||(delete a[s].data,I(a[s])))&&(o?x.cleanData([e],!0):x.support.deleteExpando||a!=a.window?delete a[s]:a[s]=null)}}}x.extend({cache:{},noData:{applet:!0,embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"},hasData:function(e){return e=e.nodeType?x.cache[e[x.expando]]:e[x.expando],!!e&&!I(e)},data:function(e,t,n){return R(e,t,n)},removeData:function(e,t){return W(e,t)},_data:function(e,t,n){return R(e,t,n,!0)},_removeData:function(e,t){return W(e,t,!0)},acceptData:function(e){if(e.nodeType&&1!==e.nodeType&&9!==e.nodeType)return!1;var t=e.nodeName&&x.noData[e.nodeName.toLowerCase()];return!t||t!==!0&&e.getAttribute("classid")===t}}),x.fn.extend({data:function(e,n){var r,i,o=null,a=0,s=this[0];if(e===t){if(this.length&&(o=x.data(s),1===s.nodeType&&!x._data(s,"parsedAttrs"))){for(r=s.attributes;r.length>a;a++)i=r[a].name,0===i.indexOf("data-")&&(i=x.camelCase(i.slice(5)),$(s,i,o[i]));x._data(s,"parsedAttrs",!0)}return o}return"object"==typeof e?this.each(function(){x.data(this,e)}):arguments.length>1?this.each(function(){x.data(this,e,n)}):s?$(s,e,x.data(s,e)):null},removeData:function(e){return this.each(function(){x.removeData(this,e)})}});function $(e,n,r){if(r===t&&1===e.nodeType){var i="data-"+n.replace(P,"-$1").toLowerCase();if(r=e.getAttribute(i),"string"==typeof r){try{r="true"===r?!0:"false"===r?!1:"null"===r?null:+r+""===r?+r:B.test(r)?x.parseJSON(r):r}catch(o){}x.data(e,n,r)}else r=t}return r}function I(e){var t;for(t in e)if(("data"!==t||!x.isEmptyObject(e[t]))&&"toJSON"!==t)return!1;return!0}x.extend({queue:function(e,n,r){var i;return e?(n=(n||"fx")+"queue",i=x._data(e,n),r&&(!i||x.isArray(r)?i=x._data(e,n,x.makeArray(r)):i.push(r)),i||[]):t},dequeue:function(e,t){t=t||"fx";var n=x.queue(e,t),r=n.length,i=n.shift(),o=x._queueHooks(e,t),a=function(){x.dequeue(e,t)};"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,a,o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return x._data(e,n)||x._data(e,n,{empty:x.Callbacks("once memory").add(function(){x._removeData(e,t+"queue"),x._removeData(e,n)})})}}),x.fn.extend({queue:function(e,n){var r=2;return"string"!=typeof e&&(n=e,e="fx",r--),r>arguments.length?x.queue(this[0],e):n===t?this:this.each(function(){var t=x.queue(this,e,n);x._queueHooks(this,e),"fx"===e&&"inprogress"!==t[0]&&x.dequeue(this,e)})},dequeue:function(e){return this.each(function(){x.dequeue(this,e)})},delay:function(e,t){return e=x.fx?x.fx.speeds[e]||e:e,t=t||"fx",this.queue(t,function(t,n){var r=setTimeout(t,e);n.stop=function(){clearTimeout(r)}})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(e,n){var r,i=1,o=x.Deferred(),a=this,s=this.length,l=function(){--i||o.resolveWith(a,[a])};"string"!=typeof e&&(n=e,e=t),e=e||"fx";while(s--)r=x._data(a[s],e+"queueHooks"),r&&r.empty&&(i++,r.empty.add(l));return l(),o.promise(n)}});var z,X,U=/[\t\r\n\f]/g,V=/\r/g,Y=/^(?:input|select|textarea|button|object)$/i,J=/^(?:a|area)$/i,G=/^(?:checked|selected)$/i,Q=x.support.getSetAttribute,K=x.support.input;x.fn.extend({attr:function(e,t){return x.access(this,x.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each(function(){x.removeAttr(this,e)})},prop:function(e,t){return x.access(this,x.prop,e,t,arguments.length>1)},removeProp:function(e){return e=x.propFix[e]||e,this.each(function(){try{this[e]=t,delete this[e]}catch(n){}})},addClass:function(e){var t,n,r,i,o,a=0,s=this.length,l="string"==typeof e&&e;if(x.isFunction(e))return this.each(function(t){x(this).addClass(e.call(this,t,this.className))});if(l)for(t=(e||"").match(T)||[];s>a;a++)if(n=this[a],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(U," "):" ")){o=0;while(i=t[o++])0>r.indexOf(" "+i+" ")&&(r+=i+" ");n.className=x.trim(r)}return this},removeClass:function(e){var t,n,r,i,o,a=0,s=this.length,l=0===arguments.length||"string"==typeof e&&e;if(x.isFunction(e))return this.each(function(t){x(this).removeClass(e.call(this,t,this.className))});if(l)for(t=(e||"").match(T)||[];s>a;a++)if(n=this[a],r=1===n.nodeType&&(n.className?(" "+n.className+" ").replace(U," "):"")){o=0;while(i=t[o++])whilLine truncated
u[o]&&(delete u[o],c?delete n[l]:typeof n.removeAttribute!==i?n.removeAttribute(l):n[l]=null,p.push(o))}},_evalUrl:function(e){return x.ajax({url:e,type:"GET",dataType:"script",async:!1,global:!1,"throws":!0})}}),x.fn.extend({wrapAll:function(e){if(x.isFunction(e))return this.each(function(t){x(this).wrapAll(e.call(this,t))});if(this[0]){var t=x(e,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&t.insertBefore(this[0]),t.map(function(){var e=this;while(e.firstChild&&1===e.firstChild.nodeType)e=e.firstChild;return e}).append(this)}return this},wrapInner:function(e){return x.isFunction(e)?this.each(function(t){x(this).wrapInner(e.call(this,t))}):this.each(function(){var t=x(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)})},wrap:function(e){var t=x.isFunction(e);return this.each(function(n){x(this).wrapAll(t?e.call(this,n):e)})},unwrap:function(){return this.parent().each(function(){x.nodeName(this,"body")||x(this).replaceWith(this.childNodes)}).end()}});var Pt,Rt,Wt,$t=/alpha\([^)]*\)/i,It=/opacity\s*=\s*([^)]*)/,zt=/^(top|right|bottom|left)$/,Xt=/^(none|table(?!-c[ea]).+)/,Ut=/^margin/,Vt=RegExp("^("+w+")(.*)$","i"),Yt=RegExp("^("+w+")(?!px)[a-z%]+$","i"),Jt=RegExp("^([+-])=("+w+")","i"),Gt={BODY:"block"},Qt={position:"absolute",visibility:"hidden",display:"block"},Kt={letterSpacing:0,fontWeight:400},Zt=["Top","Right","Bottom","Left"],en=["Webkit","O","Moz","ms"];function tn(e,t){if(t in e)return t;var n=t.charAt(0).toUpperCase()+t.slice(1),r=t,i=en.length;while(i--)if(t=en[i]+n,t in e)return t;return r}function nn(e,t){return e=t||e,"none"===x.css(e,"display")||!x.contains(e.ownerDocument,e)}function rn(e,t){var n,r,i,o=[],a=0,s=e.length;for(;s>a;a++)r=e[a],r.style&&(o[a]=x._data(r,"olddisplay"),n=r.style.display,t?(o[a]||"none"!==n||(r.style.display=""),""===r.style.display&&nn(r)&&(o[a]=x._data(r,"olddisplay",ln(r.nodeName)))):o[a]||(i=nn(r),(n&&"none"!==n||!i)&&x._data(r,"olddisplay",i?n:x.css(r,"display"))));for(a=0;s>a;a++)r=e[a],r.style&&(t&&"none"!==r.style.display&&""!==r.style.display||(r.style.display=t?o[a]||"":"none"));return e}x.fn.extend({css:function(e,n){return x.access(this,function(e,n,r){var i,o,a={},s=0;if(x.isArray(n)){for(o=Rt(e),i=n.length;i>s;s++)a[n[s]]=x.css(e,n[s],!1,o);return a}return r!==t?x.style(e,n,r):x.css(e,n)},e,n,arguments.length>1)},show:function(){return rn(this,!0)},hide:function(){return rn(this)},toggle:function(e){return"boolean"==typeof e?e?this.show():this.hide():this.each(function(){nn(this)?x(this).show():x(this).hide()})}}),x.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Wt(e,"opacity");return""===n?"1":n}}}},cssNumber:{columnCount:!0,fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":x.support.cssFloat?"cssFloat":"styleFloat"},style:function(e,n,r,i){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var o,a,s,l=x.camelCase(n),u=e.style;if(n=x.cssProps[l]||(x.cssProps[l]=tn(u,l)),s=x.cssHooks[n]||x.cssHooks[l],r===t)return s&&"get"in s&&(o=s.get(e,!1,i))!==t?o:u[n];if(a=typeof r,"string"===a&&(o=Jt.exec(r))&&(r=(o[1]+1)*o[2]+parseFloat(x.css(e,n)),a="number"),!(null==r||"number"===a&&isNaN(r)||("number"!==a||x.cssNumber[l]||(r+="px"),x.support.clearCloneStyle||""!==r||0!==n.indexOf("background")||(u[n]="inherit"),s&&"set"in s&&(r=s.set(e,r,i))===t)))try{u[n]=r}catch(c){}}},css:function(e,n,r,i){var o,a,s,l=x.camelCase(n);return n=x.cssProps[l]||(x.cssProps[l]=tn(e.style,l)),s=x.cssHooks[n]||x.cssHooks[l],s&&"get"in s&&(a=s.get(e,!0,r)),a===t&&(a=Wt(e,n,i)),"normal"===a&&n in Kt&&(a=Kt[n]),""===r||r?(o=parseFloat(a),r===!0||x.isNumeric(o)?o||0:a):a}}),e.getComputedStyle?(Rt=function(t){return e.getComputedStyle(t,null)},Wt=function(e,n,r){var i,o,a,s=r||Rt(e),l=s?s.getPropertyValue(n)||s[n]:t,u=e.style;return s&&(""!==l||x.contains(e.ownerDocument,e)||(l=x.style(e,n)),Yt.test(l)&&Ut.test(n)&&(i=u.width,o=u.minWidth,a=u.maxWidth,u.minWidth=u.maxWidth=u.width=l,l=s.width,u.width=i,u.minWidth=o,u.maxWidth=a)),l}):a.documentElement.currentStyle&&(Rt=function(e){return e.currentStyle},Wt=function(e,n,r){var i,o,a,s=r||Rt(e),l=s?s[n]:t,u=e.style;return null==l&&u&&u[n]&&(l=u[n]),Yt.test(l)&&!zt.test(n)&&(i=u.left,o=e.runtimeStyle,a=o&&o.left,a&&(o.left=e.currentStyle.left),u.left="fontSize"===n?"1em":l,l=u.pixelLeft+"px",u.left=i,a&&(o.left=a)),""===l?"auto":l});function on(e,t,n){var r=Vt.exec(t);return r?Math.max(0,r[1]-(n||0))+(r[2]||"px"):t}function an(e,t,n,r,i){var o=n===(r?"border":"content")?4:"width"===t?1:0,a=0;for(;4>o;o+=2)"margin"===n&&(a+=x.css(e,n+Zt[o],!0,i)),r?("content"===n&&(a-=x.css(e,"padding"+Zt[o],!0,i)),"margin"!==n&&(a-=x.css(e,"border"+Zt[o]+"Width",!0,i))):(a+=x.css(e,"padding"+Zt[o],!0,i),"padding"!==n&&(a+=x.css(e,"border"+Zt[o]+"Width",!0,i)));return a}function sn(e,t,n){var r=!0,i="width"===t?e.offsetWidth:e.offsetHeight,o=Rt(e),a=x.support.boxSizing&&"border-box"===x.css(e,"boxSizing",!1,o);if(0>=i||null==i){if(i=Wt(e,t,o),(0>i||null==i)&&(iLine truncated
@@ -0,0 +1,41 @@
<div class="modal" id="mkdocs_keyboard_modal" tabindex="-1" role="dialog" aria-labelledby="Keyboard Shortcuts Modal" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button>
<h4 class="modal-title">Keyboard Shortcuts</h4>
</div>
<div class="modal-body">
<table class="table">
<thead>
<tr>
<th style="width: 20%;">Keys</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<tr>
<td><kbd>?</kbd></td>
<td>Open this help</td>
</tr>
<tr>
<td><kbd>&larr;</kbd></td>
<td>Previous page</td>
</tr>
<tr>
<td><kbd>&rarr;</kbd></td>
<td>Next page</td>
</tr>
<tr>
<td><kbd>s</kbd></td>
<td>Search</td>
</tr>
</tbody>
</table>
</div>
<div class="modal-footer">
</div>
</div>
</div>
</div>
+10
View File
@@ -0,0 +1,10 @@
{% extends "base.html" %}
{#
The entry point for the MkDocs Theme.
Any theme customisations should override this file to redefine blocks defined in
the various templates. The custom theme should only need to define a main.html
which `{% extends "base.html" %}` and defines various blocks which will replace
the blocks defined in base.html and its included child templates.
#}
+7
View File
@@ -0,0 +1,7 @@
# Config options for 'mkdocs' theme
static_templates:
- 404.html
include_search_page: false
search_index_only: false
+14
View File
@@ -0,0 +1,14 @@
{%- if not nav_item.children %}
<li {% if nav_item.active %}class="active"{% endif %}>
<a href="{{ nav_item.url }}">{{ nav_item.title }}</a>
</li>
{%- else %}
<li class="dropdown-submenu">
<a href="#">{{ nav_item.title }}</a>
<ul class="dropdown-menu">
{%- for nav_item in nav_item.children %}
{% include "nav-sub.html" %}
{%- endfor %}
</ul>
</li>
{%- endif %}
+110
View File
@@ -0,0 +1,110 @@
<div class="navbar navbar-default navbar-fixed-top" role="navigation">
<div class="container">
<!-- Collapsed navigation -->
<div class="navbar-header">
{%- if nav|length>1 or (page and (page.next_page or page.previous_page)) or config.repo_url %}
<!-- Expander button -->
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
{%- endif %}
{%- block site_name %}
<a class="navbar-brand" href="{{ nav.homepage.url|url }}">{{ config.site_name }}</a>
{%- endblock %}
</div>
<!-- Expanded navigation -->
<div class="navbar-collapse collapse">
{%- block site_nav %}
{%- if nav|length>1 %}
<!-- Main navigation -->
<ul class="nav navbar-nav">
{#
{%- for nav_item in nav %}
{%- if nav_item.children %}
<li class="dropdown{% if nav_item.active %} active{% endif %}">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">{{ nav_item.title }} <b class="caret"></b></a>
<ul class="dropdown-menu">
{%- for nav_item in nav_item.children %}
{% include "nav-sub.html" %}
{%- endfor %}
</ul>
</li>
{%- else %}
<li {% if nav_item.active %}class="active"{% endif %}>
<a href="{{ nav_item.url|url }}">{{ nav_item.title }}</a>
</li>
{%- endif %}
{%- endfor %}
#}
</ul>
{%- endif %}
{%- endblock %}
<ul class="nav navbar-nav navbar-right">
{%- block search_button %}
{%- if 'search' in config['plugins'] %}
<li>
<a href="#" data-toggle="modal" data-target="#mkdocs_search_modal">
<i class="fa fa-search"></i> Search
</a>
</li>
{%- endif %}
{%- endblock %}
{%- block next_prev %}
{%- if page and (page.next_page or page.previous_page) %}
<li {% if not page.previous_page %}class="disabled"{% endif %}>
<a rel="next" {% if page.previous_page %}href="{{ page.previous_page.url|url }}"{% endif %}>
<i class="fa fa-arrow-left"></i> Previous
</a>
</li>
<li {% if not page.next_page %}class="disabled"{% endif %}>
<a rel="prev" {% if page.next_page %}href="{{ page.next_page.url|url }}"{% endif %}>
Next <i class="fa fa-arrow-right"></i>
</a>
</li>
{%- endif %}
{%- endblock %}
{%- block repo %}
{%- if page and page.edit_url %}
<li>
<a href="{{ page.edit_url|url }}">
{%- if config.repo_name == 'GitHub' -%}
<i class="fa fa-github"></i> Edit on {{ config.repo_name }}
{%- elif config.repo_name == 'Bitbucket' -%}
<i class="fa fa-bitbucket"></i> Edit on {{ config.repo_name }}
{%- elif config.repo_name == 'GitLab' -%}
<i class="fa fa-gitlab"></i> Edit on {{ config.repo_name }}
{%- else -%}
Edit on {{ config.repo_name }}
{%- endif -%}
</a>
</li>
{%- elif config.repo_url %}
<li>
<a href="{{ config.repo_url|url }}">
{%- if config.repo_name == 'GitHub' -%}
<i class="fa fa-github"></i> {{ config.repo_name }}
{%- elif config.repo_name == 'Bitbucket' -%}
<i class="fa fa-bitbucket"></i> {{ config.repo_name }}
{%- elif config.repo_name == 'GitLab' -%}
<i class="fa fa-gitlab"></i> {{ config.repo_name }}
{%- else -%}
{{ config.repo_name }}
{%- endif -%}
</a>
</li>
{%- endif %}
{%- endblock %}
</ul>
</div>
</div>
</div>
+24
View File
@@ -0,0 +1,24 @@
<div class="modal" id="mkdocs_search_modal" tabindex="-1" role="dialog" aria-labelledby="Search Modal" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</span><span class="sr-only">Close</span></button>
<h4 class="modal-title">Search</h4>
</div>
<div class="modal-body">
<p>
From here you can search these documents. Enter
your search terms below.
</p>
<form role="form">
<div class="form-group">
<input type="text" class="form-control" placeholder="Search..." id="mkdocs-search-query" title="Type search term here">
</div>
</form>
<div id="mkdocs-search-results"></div>
</div>
<div class="modal-footer">
</div>
</div>
</div>
</div>
+45
View File
@@ -0,0 +1,45 @@
<!--div class="bs-sidebar hidden-print affix well" style="z-index:1000" role="complementary">
<ul class="nav bs-sidenav">
{%- for toc_item in page.toc %}
<li class="main {% if toc_item.active %}active{% endif %}"><a href="{{ toc_item.url }}">{{ toc_item.title }}</a></li>
{%- for toc_item in toc_item.children %}
<li><a href="{{ toc_item.url }}">{{ toc_item.title }}</a></li>
{%- endfor %}
{%- endfor %}
</ul>
</div-->
<div class="bs-sidebar hidden-print affix well" style="z-index:1000" role="complementary">
{% if nav|length>1 %}
<ul class="nav bs-sidenav">
{% for nav_item in nav %}
{% if nav_item.children %}
<li>{{ nav_item.title }}
<ul>
{% for nav_item in nav_item.children %}
<li class="{% if nav_item.active%}active{%endif%}">
<a href="{{ nav_item.url|url }}">{{ nav_item.title }}</a>
</li>
{% endfor %}
</ul>
</li>
{% else %}
<li class="{% if nav_item.active%}active{%endif%}">
<a href="{{ nav_item.url|url }}">{{ nav_item.title }}</a>
{% if nav_item.active%}
<ul>
{%- for toc_item in page.toc %}
<li class="main {% if toc_item.active %}active{% endif %}"><a href="{{ toc_item.url|url }}">{{ toc_item.title }}</a></li>
{%- for toc_item in toc_item.children %}
<li><a href="{{ toc_item.url }}">{{ toc_item.title }}</a></li>
{%- endfor %}
{%- endfor %}
</ul>
{%endif%}
</li>
{% endif %}
{% endfor %}
</ul>
{% endif %}
</div>
+2
View File
@@ -0,0 +1,2 @@
#!/bin/bash
python -m mkdocs build -d $1
+27
View File
@@ -0,0 +1,27 @@
#Help
##Report a Problem
If there is any issue at all, you can click here
and it’ll bring up a “Report a Problem” window, which you can type
in the issues you might be facing, provide an email or phone number,
and also the option of including a screenshot.  Then upon clicking
send, BTS will get an alert of everything you submitted and will be
in contact with you shortly.
![](images/image58.png)
##About Spark
Upon launching this, you will see an info window
which will list what version you are running as well as who is
currently logged in.
![](images/image32.png)
##Activity log
This is an overall log viewer which will show
everything that is going on in terms of orders, fills, cancels,
modifications, and warning.  You also have the ability to filter out
messages in a text box in the right top corner.
 
![](images/image39.png)
+29
View File
@@ -0,0 +1,29 @@
#Module Launcher
- The module launcher is the first item that will come up after
logging in to Spark.
- This is your central control for all modules
- You can launch all modules within Spark from here by hovering over
each module
- It appears like the following:
![](images/image38.png)
- If you right click anywhere on the launcher you can modify
various display settings including:
- Vertical layout, instead of horizontal
- Showing the text of the individual modules
- Having the launcher visible above other windows
- Spark information
- Ability to exit the front end, this can also be done by simply clicking the “X” on the top right of this window or by clicking on exit from this options window
- These options are all displayed like the following:
![](images/image68.png)
## Spark User interface
Some common features within BTS Spark
- All Windows are tabbed so they can be combined or separated to organize your workspace
- Some Spark windows have a menu on the left hand side where you can launch related modules or change settings. You can see the menu item names either by hovering your mouse over the icon, or clicking on the right edge of the menu (a blue bar will appear).
-  Some table columns have filtering capabilities, where if you hover over the column header, it will display a filter icon, which enables you to filter the table based on the information in that column.
+13
View File
@@ -0,0 +1,13 @@
#Logging in to the system
The shortcut icon will appear on your desktop like below:
![](images/image64.png =45)
Simply double click or single click and hit enter to launch the
login screen:
![](images/image3.png)
Choose your username from the drop down, choose your initial
workspace, enter your password, and click Login
+160
View File
@@ -0,0 +1,160 @@
#Market
- This is one of the main items on the module launcher
- When hovering over it, it will show 2 different modules which can
be launched from it, market view and then, time and sales
- It appears like the below:
![](images/image53.png)
##Market View
- This provides a grid of outright, spread, and synthetic products
showing real-time market data all in one place
- You can create multiple market view grids and customize the
security selection to fit your needs
- All market views are brought up as tabs and can be combined with
all other windows within BTS
- You choose which products you would like to view upon launching it,
the security browser will appear as shown below:
![](images/image21.png)
- Click on individual securities that you wish to view and click add,
they will then show up in the selected securities window below.  If
you wish to remove a security, simply highlight and click remove to
the right of the selected securities window.
- If you would like to view all securities for a particular product,
you can click on the symbol and leave the securities section alone
and all securities will be displayed.  This will show up in the
selected securities window as “&lt;symbol&gt; future at
&lt;exchange&gt;”
- Synthetic’s can be displayed by clicking on exchange “BTS”, then
synthetic, symbol, and finally under the securities window.
- Below is an example of an outright, spread, all futures, and
synthetic chosen:
![](images/image14.png)
- Clicking OK will bring up the Market View with the selected
securities you have chosen, in this example, it appears like the
following:
![](images/image63.png)
- Once a market view is launched and you are viewing data, you can
customize the view further by the following:
- Sorting - by single left clicking on any of the column headers
it’ll sort that column in either descending or ascending order
- Filtering - by hovering over the column header, a filtering box
will appear like below:
![](images/image66.png)
- All columns let you sort by that columns minimum and maximum
information in a box that appears like the following:
![](images/image24.png)
- Specifically for the securities column, there is a search box that
will appear by bringing up the filtering box, which enables users to
type the security in which they are looking for.  This appears like
the following:
![](images/image11.png)
- Besides viewing the market data, you can do a lot within the market
view by utilizing the icons to the left of the main window, these
include:
- Change securities
- Launch a ladder for one or more securities
- Launch an order ticket
- Launch a fills window for one or more securities
- Launch a time and sales for one or more securities
- Launching the synthetic window to create a synthetic product
- Change securities
- Click on the settings icon ![](images/image12.png)which will launch the market view security selection.  You can add or remove Securities you have already selected and are shown in the market view.
- Launch an order ticket
- This is done 1 of 2 ways:
- Single left clicking on either the Bid Qty, Bid Price, Ask Price,
or Ask Qty which will bring up an order ticket pre-populated with
either the Bid or Ask price and volume.
- Highlighting a single security and clicking on the order ticket
![](images/image23.png) icon
on the left hand browser window of the market view
- Launch a ladder for 1 security
- You can double click on any security in the market view, besides
the Bid Qty, Bid Price, Ask Price, or Ask Qty columns to launch a
ladder for that Security.
- Launching multiple ladders
- If you hold down the Ctrl key and select multiple securities, you
can then click on the ladder icon
![](images/image69.png) on
the left hand side to bring up the selected ladders all at
once.
- Launching a Fills window for 1 or many securities
- This is done by either highlighting 1 or many securities and then
clicking on the Fills icon
![](images/image20.png) on
the left hand side to bring up a fill window for the selected
securities.  
- Please note - If there haven’t been any fills for the day in that
particular security, an empty fill window will be displayed
- Launching Time and Sales for 1 or many securities
- This is accomplished by highlighting 1 or many securities and then
clicking on the time and sales icon
![](images/image49.png) on
the left hand side
- Launching the synthetic window to create a synthetic product
- This is accomplished by highlighting either 1 or 2 securities and
clicking on the Synthetic icon
![](images/image34.png) on
the lower left hand side
- Please note - If only 1 security is chosen, a create synthetic
window will appear, and you will be required to add another leg from
that window to create the synthetic
##Time and Sales
- Provides a display of real time fills as they happen for 1 or many
securities
- You can create multiple time and sale windows and customize the
security selection to fit your needs
- All time and sales are in brought up as tabs and can be combined
with all other windows within BTS
- On launching a security browser will appear, allowing you to choose
the products you would like to view.
![](images/image30.png)
- From time and sales, you can launch the same items as the market
view with the exception of a launching the synthetic window to
create a synthetic product
+26
View File
@@ -0,0 +1,26 @@
#My Windows
This is the housing of the windows that you have manually named and
creates a place where you can quickly and easily launch windows
which you’ve customized.
To give a specific tab or window a name of your choice, simply right
click on any tab and the “Add to My Windows” menu will appear.  If you
click on Add to My Windows, it will give you the ability to type in a
text box on the tab itself.
![](images/image16.png)
Once you have named the tab, click enter to get out of the editing view
of the text box.  Once that is done, it will display that name for that
tab moving forward, which will be displayed within the My Windows
section of the module launcher.
![](images/image15.png)
Right clicking on a tab that has already had its default title modified
will show the following which will allow you to rename the modified
title or remove it from the my windows, which will then restore the
default standard title.
![](images/image37.png)
+20
View File
@@ -0,0 +1,20 @@
#Settings
##Workspaces
This is where your workspaces can be saved or switched
to pre-saved ones that you have created.  If you click on the
Settings module, the Workspaces
![](images/image9.png)
Once the Workspace menu is launched you can save your current workspace
by typing in a name in the text box and clicking save.  This will save
your workspace as is so you can launch it directly upon logging in or
switching to it from the workspace launcher later on.
You can also delete workspaces by clicking on the “X” to the right of
the saved workspace from the workspace menu.
![](images/image51.png)
+167
View File
@@ -0,0 +1,167 @@
#Spreader
- Launching the spreader from the module launcher will bring up the
synthetic management browser which appears like below:
![](images/image35.png)
- From this window it’ll show any synthetics that you have already
created as well as various other options of both managing the
synthetics and other tasks all from the left hand side pane within
the window, including:
- Adding a new synthetic ![](images/image8.png)
- Removing a synthetic ![](images/image13.png)
- Changing a synthetic ![](images/image55.png)
- Cloning a synthetic ![](images/image28.png)
- Launching a ladder of a highlighted synthetic ![](images/image7.png)
- Launching an order book of selected synthetic ![](images/image43.png)
##Creating a synthetic
- Bringing up a synthetic browser to create a new synthetic can be
done from a number of ways:
- From the main module launcher, you can go to spreader, then
synthetics, then click add
- Highlighting one or more securities in a market view and clicking
on create synthetic
- Cloning an existing security
- An empty synthetic browser will look like below without any legs
chosen:
![](images/image31.png)
- Clicking on Add Leg on the top right of the window will launch the
security browser, which will allow you to choose the first leg
- Upon adding legs, you can then go through each of the parameters to
customize how you would like the spread to be worked in the
market
- We’ll start at the top of create synthetic window and work our way
down:
- At the very top of the create synthetic window you will have to
name your synthetic product.  By default, it will auto-populate
based on the symbols you have chosen:
![](images/image29.png)
- You can click into the text box to the right of the name and
customize the name to be whatever you would like, we’ll call this
ES\_CAL:
![](images/image19.png)
- Also included on this row are what ticks you would like this to be
priced in as well as the format of the pricing
- Moving down within this window, you’ll see the symbols you have
chosen which you can remove by clicking on the X to the left as well
as the option to add additional legs through the add leg box to the
right of the symbols:
![](images/image18.png)
- The following rows are all part of the main parameters which can
all be modified according to the traders style of designing the
synthetic and how it will be priced as well as worked at the
exchange
- Furthermore, if you are ever unsure of what a parameter’s function
is and how it is controlled you can hover over the parameter’s title
and a “?” will be shown.  Clicking on this will expand built in
details of how that parameter functions.  Below is an example of the
throttle details displayed:
![](images/image56.png)
- Main parameters - these are the top 4 rows in the create synthetic
window which all synthetics will be required to have set.
 Everything below these are custom to a traders needs, however the
top 4 are the main foundational aspects used for the calculation of
the synthetic:
![](images/image10.png)
- Quantity - This is the number of contracts of the security you
would like to be included in the calculation of the synthetic as
well as a buy or sell.  By default, the first leg will come up as a
buy and the second leg a sell.  Sells are represented “-1”
- Price multiplier - This is multiplier at which the synthetic will
be priced, by default, it’ll be based on the same as the quantity of
the synthetic produced, but you can change it to modify the balance
of the price, giving more weighting to one leg over another.
- Enable quoting - This parameter is in the form of a check box,
where if the box is checked the leg will be quoted versus not
checked, it will not be shown in the market.  If it is not actively
quoted in the market, the leg will still be used for calculation of
the entire synthetic.
- Hedge ratio - This is the ratio multiplier that defines how much
volume you require in that leg before leaning off it.  For example,
if you are looking to buy 4 ES and sell 2 NQ, if your hedge ratio is
1, you will work the ES leg at where you could get filled on 2 NQ.
 If your Hedge Ratio is 3 on the NQ leg, then you’ll work the ES
order based on where you could fill 6 (2 (Qty of NQ) \* 3 (Hedge
Ratio)).
- The next 6 parameters are all completely custom to a traders needs
and can further define how a synthetic is worked.  As previously
mentioned, if you hover over any of these parameters a “?” will be
displayed and click on such will display further details on how this
parameter is used:
![](images/image72.png)
- Quote
- Throttle - This can be enabled or disabled based on if the box is
checked per leg.  It’s main function is to reduce re-quoting updates
by defining a region on either side of the working quote order,
inside which quote updates will not be sent:
![](images/image6.png)
- Pre-Hedge
- Pay Less - If enabled by checking the checkbox, the spreader will
attempt to pay less when the quantity at the level of the calculated
hedge price is more than the threshold defined.  The hedge order is
paid less by the “Payless Ticks” as defined per leg.
- Pay Up - If enabled by checking the checkbox, the spreader will pay
up when the quantity at the level of the calculated hedge price is
more than the threshold defined.  The hedge order will pay up by the
“Payup Ticks” as defined per leg.
![](images/image54.png)
- Post-Hedge
- Ticks Away Cross - If enabled by checking the checkbox, the
spreader will force hedging orders to automatically cross (fill) the
market if they get too far away from the opposite inside market.  If
a legged hedge order’s price gets X amount of “ticks” away from the
opposite inside market, it is re-priced to cross the opposite inside
market as defined by “cross ticks”
![](images/image70.png)
- Time Based Cross - Basically the exact same as ticks away cross,
however this is based on time (in ms) on when to automatically cross
(fill) the market if they get too far away from the opposite inside
market.  If a legged hedge order’s price gets X amount of “ticks”
away from the opposite inside market, it is re-priced to cross the
opposite inside market as defined by “cross ticks”
![](images/image40.png)
- Size Based Cross - similar to ticks and time based cross, but based
on size instead.  If you define a threshold of the opposite inside
market and it drops below that threshold, it’ll automatically cross
the market.  If a legged hedge order’s price gets X amount of
“ticks” away from the opposite inside market, it is re-priced to
cross the opposite inside market as defined by “cross ticks”
![](images/image76.png)
+338
View File
@@ -0,0 +1,338 @@
#Trading
- When hovering over, it will show 5 windows which can be launched,
Order Book, Fills, P&L, Ladder, and Order Ticket
- It appears like below:
![](images/image44.png)
##Order Book
- This provides list of all orders a user has placed, by default it
will display only working orders
- You can create multiple order books filtered however you would
like
- All order books are brought up as tabs and can be combined with all
other windows within BTS
- Appears like the following:
![](images/image5.png)
- You can sort all columns by single left clicking on the column
header which will sort in either descending or ascending order, an
up or down arrow will appear representing which way it is sorting.
 Below is a display of the security column sorting in descending
fashion.
![](images/image60.png)
- Filtering can occur, by hovering over any column header which will
display a “Filter” box.  Clicking on this will then display the
available components which can be filtered, below is an example of
clicking on the securities column
![](images/image52.png)
- If the column is displaying time base information, a special style
box will appear when clicking on the filtering box providing more
options than simply filtering of the available information.  You can
choose the following time frames in which to filter:
- Anytime
- Today
- Since Open
- A specific user defined period of time
![](images/image25.png)
- The left hand box within an order book provides users with further
functionality to quickly perform various tasks with live orders as
well as launch other modules.  It’s appears like the below:
![](images/image4.png)
- ![](images/image48.png)][Fills -
clicking on this will launch a fills window
- ![](images/image57.png)][ Modify -
clicking on this will launch an order ticket for a live order
highlighted in the Order Book.
- ![](images/image73.png)][Cancel
selected - clicking on this will cancel the selected orders you have
highlighted in the order book.  You can choose more than one by
holding hold the Ctrl key when click on each row of orders
- ![](images/image74.png)][Cancel
buys - clicking on this will cancel all the buy orders you have in
the order book
- ![](images/image33.png)][Cancel
sells - clicking on this will cancel all the sell orders you have in
the order book
- ![](images/image2.png)][Cancel
all - clicking on this will cancel all working orders you have the
order book
##Fills
- This provides list of all fills a user has had for a given time
period, by default it will open up with “since open” time frame
selected showing you fills on the day thus far
- You can create multiple fill windows, filtered however you
like
- All fill windows are brought up as tabs and can be combined with
all other windows within BTS
##P&amp;L
- This provides a running ledger of a users account(s) profit and
loss broken down per symbol
- You can create multiple P&L windows, filtered however you would
like
- All P&L windows are brought up as tabs and can be combined with all
other windows within BTS
- All columns are sortable and either searchable or can be further
filtered by entering in min and max values.
- Below is an example P&L window showing a user’s multiple accounts
and various positions in each:
![](images/image67.png)
##Ladder
- The ladder was designed to be the most logically produced ladder on
the market, engineered and designed by professional traders for
professional traders
- Ladders are launched as tabs and can be combined with all other
windows within BTS
- Ladders are the quickest and easiest way to enter an order into the
market with a single click
- Below is an example ladder:
![](images/image36.png)
- The ladder consist of 2 major parts, the Ladder itself and the
information and control section on the left hand side
- The information section on the left contains the following: &nbsp; ![](images/image1.png)
- Day - showing the current price of the security on the day
- High - showing the high price of the security on the day
- Low - showing the low price of the security on the day
- Open - showing the open price on the day
- Settle - showing what the security settled at in the previous trading day
- Volume - showing the last traded volume of the security in real time
- The control section right underneath the information section on the
left hand side offers the following:
![](images/image62.png)
- Account in which the orders will flow into when trading this
security
- Length of time the order will remain in market, either DAY or
GTC
- Order type, by default orders will go in as Limit, however all of
the following are offered out of the box.  The top 5 are all fairly
standard order types, however the bottom 5 are all specialized
algos.  They are only offered by BTS and require specialized
parameters.  Please see below for each order type:
- Market
- This is a buy or sell order to be executed immediately at the
current market price.
- Limit
- This is a buy or sell order designed to take place on the exact
price level you have entered the order at.
- Stop
- This is a buy or sell order only when a security increases or
decreases past a particular point, thus limiting or locking in
profit or loss
- Stop Limit
- This is a buy or sell order which will be executed at a certain
price after the given stop price is reached.  You will need to enter
the stop price, by clicking on the “&lt;” to bring up the stop price
option:
![](images/image61.png)
- Iceberg
- This is a buy or sell order where the order is divided into a
visible or “show” portion which is seen at the exchange.  ][The
rest of the order is hidden and will remain hidden until the show
quantity is filled, essentially reloading the order back to the show
quantity.  You will need to ][define what type of order that will
be used for the child order to be sent.
![](images/image47.png)
- Time Box
- This is a type of order set up to allow a user to enter an order at
a certain time and stop an order at a particular time as well.  The
options to either start or stop an order are the following and can
be combined in any fashion, i.e. you can start immediately and stop
at a certain time, or start at a certain time and not stop until the
order is completed.
- At
- In
- Immediately
- Once the time frame is chosen, you will need to then choose the
order type of the order that will be entered into the market.
- Below are images of the type of time frame that can be used within
the time box
![](images/image42.png)
         
![](images/image50.png)
- Tick
- This is a specialized algo order which allows the user to
essentially watch the opposite-inside market size and cross when
that size goes below the threshold defined.
- “Crossing” means to take an order working on the bid and 'cross' by
buying into the asks.  This is often referred to as “paying up” as
well
![](images/image22.png)
- Lean
- This is a specialized algo order which allows the user to enter an
order which will watch the opposite-inside market size and cross
when that size goes below the threshold defined in the
parameters
![](images/image45.png)
- Join
- This is a specialized algo order which allows the user to enter an
order which will watch the opposite-inside market and join when the
market flips and has at least threshold size as defined.
- “Flip” refers to the event where the best offer becomes the best
bid or the market trades away from you, i.e. the line moves up in
the GUI.  This is all true in the reverse way as well if
selling.
![](images/image41.png)
- Top
- This is a specialized algo order which allows the user to
essentially not trade by themselves
- If the order is on the market (current bid price) and the quantity
on that bid price is below the top threshold defined the order will
cancel and do nothing else
![](images/image26.png)
- The middle of the control section is where you can click on
predefined values to quickly populate the volume at which you wish
to enter the market.
![](images/image17.png)
- You can manually type in a quantity here as well
- Furthermore, if you have a value in the volume bar, you can
increase this size by right clicking and the value will increase
incrementally by 1.  The same is true if you would like to decrease
this value by left click and the value will decrease.
- By having the auto clear box checked, it will bring the value back
to zero after placing an order at the size chosen.
![](images/image59.png)
-  The bottom section of the control area of a ladder has 4 aspects
to it
- Cancel Buys - which will cancel all buys currently working on the
ladder
- Cancel Sells - which will cancel all sells currently working on the
ladder
- Cancel All - which will cancel all orders on the ladder
- Settings - this will launch the ladder settings window which
appears like below
![](images/image71.png)
- The other, main part of the ladder, is the ladder itself as
displayed below
![](images/image65.png)
- There are 5 main columns
- Orders - which display current orders working in the market
- Bid - which displays the current bid volumes at each price
level
- Price - which displays the price levels of the symbol shown
- Ask - which displays the current ask volumes at each price
level
- Last Trade - which displays where the price level and volume of
where the last trade occurred
- Functionality of the ladder
- To enter an order directly by clicking in the ladder, left click on
either the bid or ask volume with a volume greater than 0 on the
predefined value box on the left hand section
- A badge will be displayed within the orders column of the value you
have chosen and the quantity filled as displayed below
![](images/image46.png)
- To change the price level you wish to work the order, you can right
click and hold on the badge to move it up or down the ladder for the
desired price
- To cancel the order, left click on the badge
- Furthermore, you can click down on the scroll wheel of your mouse
to bring up a cancel or detach option
## Order Ticket
- The order ticket was designed to provide another means other than
the ladder to enter orders into the market
- You can bring up an order ticket directly from the module launcher,
which will bring up the security browser where you can then choose
which security to populate
- The order ticket appears like below
![](images/image27.png)
- On the top left you have the price for the order as well as the
volume
- Beneath are the predefined volumes as well as a clear button to
clear out the volume
- On the top right you have the current bid and ask and volumes of
each for the security chosen
- You can populate the price and volume by clicking on either the bid
or ask price as well as the corresponding volumes
-  Below you have the account drop down, the duration of the order,
and the order type
- Please note you can also launch the required parameters for algo or
synthetic orders by clicking on the right arrow next to the algo or
synthetic
Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 837 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 101 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 62 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 799 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Loaded 100 of 2150 files, more files were not shown because too many files have changed in this diff. Show more