{"id":2026,"date":"2020-03-31T09:16:34","date_gmt":"2020-03-31T09:16:34","guid":{"rendered":"https:\/\/devexperts.com\/blog\/?p=2026"},"modified":"2024-01-31T12:16:24","modified_gmt":"2024-01-31T12:16:24","slug":"maintaining-trading-platforms-uptime-through-turbulent-markets","status":"publish","type":"post","link":"https:\/\/devexperts.com\/blog\/maintaining-trading-platforms-uptime-through-turbulent-markets\/","title":{"rendered":"Maintaining Trading Platforms Uptime Through Turbulent Markets"},"content":{"rendered":"\n<p><strong>Software development, architecture, and testing principles that Devexperts adhere to<\/strong>.<\/p>\n\n\n\n<p>The novel coronavirus and its attendant disease, Covid-19, have been wreaking havoc on global markets. Since the end of February, we have witnessed the S&amp;P 500 undergoing its fastest ever decline from an all-time high, as well as the largest drop in the price of crude oil since the first Gulf War in 1991. All major global indices are now down well over 20%, the official criterion for entry into a bear market, with volatility across FX, gold, oil, and stock markets being at multi-year highs.  This has led to many brokerages across a variety of asset classes reporting greatly increased trading volumes. <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/devexperts.com\/blog\/app\/uploads\/2020\/03\/maintaining-trading-platforms-uptime.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"722\" src=\"https:\/\/devexperts.com\/blog\/app\/uploads\/2020\/03\/maintaining-trading-platforms-uptime-1024x722.png\" alt=\"The back office of an OTC European broker demonstrates sharp increase in the number of filled orders since the end of February, 2020.\" class=\"wp-image-2027\" srcset=\"https:\/\/devexperts.com\/blog\/app\/uploads\/2020\/03\/maintaining-trading-platforms-uptime-1024x722.png 1024w, https:\/\/devexperts.com\/blog\/app\/uploads\/2020\/03\/maintaining-trading-platforms-uptime-300x212.png 300w, https:\/\/devexperts.com\/blog\/app\/uploads\/2020\/03\/maintaining-trading-platforms-uptime-768x542.png 768w, https:\/\/devexperts.com\/blog\/app\/uploads\/2020\/03\/maintaining-trading-platforms-uptime-1536x1084.png 1536w, https:\/\/devexperts.com\/blog\/app\/uploads\/2020\/03\/maintaining-trading-platforms-uptime-2048x1445.png 2048w, https:\/\/devexperts.com\/blog\/app\/uploads\/2020\/03\/maintaining-trading-platforms-uptime-320x226.png 320w, https:\/\/devexperts.com\/blog\/app\/uploads\/2020\/03\/maintaining-trading-platforms-uptime-382x270.png 382w, https:\/\/devexperts.com\/blog\/app\/uploads\/2020\/03\/maintaining-trading-platforms-uptime-578x408.png 578w, https:\/\/devexperts.com\/blog\/app\/uploads\/2020\/03\/maintaining-trading-platforms-uptime-1366x964.png 1366w, https:\/\/devexperts.com\/blog\/app\/uploads\/2020\/03\/maintaining-trading-platforms-uptime-1680x1185.png 1680w, https:\/\/devexperts.com\/blog\/app\/uploads\/2020\/03\/maintaining-trading-platforms-uptime-1920x1355.png 1920w\" sizes=\"auto, (max-width: 959px) calc(100vw - 30px), 870px\" \/><\/a><figcaption class=\"wp-element-caption\">The back office of an OTC European broker demonstrates a sharp increase in the number of filled orders since the end of February, 2020.<\/figcaption><\/figure>\n\n\n\n<p>Even the most robust of trading infrastructures get tested to their very limits when volumes surge and volatility spikes. There have already been several high-profile venues from both the institutional and retail spaces experiencing outages as their systems struggle to handle the increased load.<\/p>\n\n\n\n<p>What steps can brokers take to mitigate the strain on their systems during such times? How can they best prepare and future-proof their businesses for such occurrences going forward? We asked our team of engineers to share a few of their insights. <\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-front-end-optimisations\"><strong>Front End Optimisations<\/strong><\/h2>\n\n\n\n<p>A highly-scalable architecture of a\ntrading platform should be, at least, tolerant to bursts in market-data. During\ntimes of high market volatility, it\u2019s reasonable to expect the amount of market\ndata to be up to 10 times higher than normal, causing overload to servers and\nnetwork channels. <\/p>\n\n\n\n<p>At such times, it\u2019s imperative that\ntransport protocols are in place to prioritise traffic. This allows for the\nmost critical functions of a trading platform, such as the opening, closing and\nediting of positions, to be assigned a higher priority over less critical\nfunctions such as the streaming of market data.<\/p>\n\n\n\n<p>In order to achieve this a \u201clatest\nsnapshot\u201d may be employed, so that only the most recent market data is made\navailable, as the end trader is interested only in recent quotes, not the\nquotes that were valid a couple of milliseconds ago. Price quotes can also be\nconflated by removing duplicates and quote queue length can be shortened by\nintelligently removing redundant portions so as to temporarily relieve strain\non both the network and servers.<\/p>\n\n\n\n<p>At Devexperts we have overcome such issues through the development of custom transport protocols using the publish-subscribe messaging pattern, which allow for such prioritisation to be conducted at scale when unforeseen market events lead to surges in activity and their resultant bottlenecks. The less data you send (only what the trader wants to see right now), the less load is placed on the network and servers.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-back-end-optimisations\"><strong>Back End Optimisations<\/strong><\/h2>\n\n\n\n<p>However, the above optimisations only apply to user interfaces. The demands on the back end are obviously far higher as all incoming market data must be checked against real-time order instructions, existing positions, price alerts, and any pending orders. Even though this is unavoidable, the process can be made more efficient. Here are some essential best practices:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Arrays\nand lists should be used in method calls, thus saving on the number of method\ncalls. Instead of having onQuote(Quote q), your method signature should read\nonQuotes(List&lt;Quote&gt; q). <\/li>\n\n\n\n<li>Also,\nopt for garbage-free market data libraries where possible as garbage collection\ncan be costly in terms of CPU cycles. Some kind of cyclic buffers are a must to\nsave CPU time.<\/li>\n\n\n\n<li>Use\nread-only objects in the entity framework, which allows for the same copy to be\nreused, with versions to distinguish between different object instances. <\/li>\n<\/ul>\n\n\n\n<p>A brokerage\u2019s trading infrastructure should be, at the very least, temporarily tolerant to the kinds of surges in market activity that take place during Black Swan events. Events such as those of the 2008 financial crisis, the Swiss National Bank flash crash of 2015, or the current coronavirus crisis only occur once every few years. Regardless of their infrequency, brokerage architectures should be over-engineered to handle loads in excess of what the business regards as its maximum required capacity. <\/p>\n\n\n\n<p>Modularity is important as well as deployment. The platform owner should have the ability to add more hardware if the need arises. If a server on a single node is lagging under high pressure, it ought to be modularised. The most heavily loaded part can be extracted to a separate instance and it can be scaled to several such instances. The part that is not under heavy load may reside in a single node as it was previously. Using a microservice architecture in software development allows for this to be done easily. In this way, a balance may be achieved between deployment costs, product installation, and performance. <\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-testing\"><strong>Testing<\/strong><\/h2>\n\n\n\n<p>The subject that our engineers were the\nmost adamant on was that of testing. Evidently this is not something that can\nbe done on the fly while a crisis is unfolding. Nevertheless, they were vocal\nabout this being the area where many businesses cut corners when in a rush to\nship a product. This, according to them, is what lets brokerages down when\nmarket events arise to test their systems in ways that they neglected to prior\nto launching.<\/p>\n\n\n\n<p>Insights on testing and monitoring:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Thorough\nstress-testing before the release in order to spot and fix problems which users\nmay encounter at times of high load. Know your limits.<\/li>\n\n\n\n<li>Monitor\nclient activity in order to determine both the maximum number of simultaneous\nusers and the maximum number of trades that may be placed in a given time.&nbsp; <\/li>\n\n\n\n<li>When\nstress testing brokerage systems, the maximums observed during monitoring\nshould be taken as averages and doubled for the purposes of testing. This\nallows for significant headroom in the event of a Black Swan. <\/li>\n\n\n\n<li>Systems\nshould be loaded to maximum capacity and pushed beyond this in order to\ndetermine both the loads at which performance deteriorates and for how long the\nsystem can operate under a specified load without needing to be restarted.<\/li>\n\n\n\n<li>Business\ncritical functions should be insulated from frequent changes for all of the\nabove reasons. <\/li>\n\n\n\n<li>Devote\nmost of the tests to the functionality critical to the business. Don\u2019t add\nchanges if you are not confident in them.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-conclusions\"><strong>Conclusions<\/strong><\/h2>\n\n\n\n<p>The main takeaway here is that failing to prepare is tantamount to preparing to fail. Though no system can be completely impervious to unforeseen events, sufficient resources ought to be dedicated at the outset, during architecture, development and testing phases. This is so that when the unknown becomes known, your maintenance and support department won\u2019t be running around putting out fires during times of unexpectedly high market volatility. These things do happen with an alarming regularity even though it\u2019s human nature to pretend that they don\u2019t and they cannot be prepared for in a day. The moral of the story? Cutting corners only leads to going in circles.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Software development, architecture, and testing principles that Devexperts adhere to. The novel coronavirus and its attendant disease, Covid-19, have been &hellip; <\/p>\n","protected":false},"author":39,"featured_media":2031,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[2021,2020],"tags":[36,11,61,496],"class_list":["post-2026","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-brokerage","category-fintech","tag-development","tag-financial-software","tag-monitoring","tag-testing"],"acf":{"nifty_post_card_image":4535,"nifty_post_card_index_big":"","nifty_post_inner_image":"","nifty_post_card_banner":""},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.2 (Yoast SEO v27.2) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Maintaining Trading Platforms Uptime Through Turbulent Markets<\/title>\n<meta name=\"description\" content=\"Essential best practices to relieve the strain on brokers&#039; trading systems during times of high market volatility and surges of market data.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/devexperts.com\/blog\/maintaining-trading-platforms-uptime-through-turbulent-markets\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Maintaining Trading Platforms Uptime Through Turbulent Markets\" \/>\n<meta property=\"og:description\" content=\"Essential best practices to relieve the strain on brokers&#039; trading systems during times of high market volatility and surges of market data.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/devexperts.com\/blog\/maintaining-trading-platforms-uptime-through-turbulent-markets\/\" \/>\n<meta property=\"og:site_name\" content=\"Devexperts Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/devexperts\/\" \/>\n<meta property=\"article:published_time\" content=\"2020-03-31T09:16:34+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-01-31T12:16:24+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/devexperts.com\/blog\/app\/uploads\/2020\/03\/maintaining-trading-platforms-uptime-1.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"630\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Alexander Volkov\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@devexperts\" \/>\n<meta name=\"twitter:site\" content=\"@devexperts\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Alexander Volkov\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":[\"Article\",\"BlogPosting\"],\"@id\":\"https:\/\/devexperts.com\/blog\/maintaining-trading-platforms-uptime-through-turbulent-markets\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/devexperts.com\/blog\/maintaining-trading-platforms-uptime-through-turbulent-markets\/\"},\"author\":{\"name\":\"Alexander Volkov\"},\"headline\":\"Maintaining Trading Platforms Uptime Through Turbulent Markets\",\"datePublished\":\"2020-03-31T09:16:34+00:00\",\"dateModified\":\"2024-01-31T12:16:24+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/devexperts.com\/blog\/maintaining-trading-platforms-uptime-through-turbulent-markets\/\"},\"wordCount\":1168,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/devexperts.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/devexperts.com\/blog\/maintaining-trading-platforms-uptime-through-turbulent-markets\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/devexperts.com\/blog\/app\/uploads\/2020\/03\/Maintaining-Trading-Platforms-Uptime-Through-Turbulent-Markets-scaled.jpg\",\"keywords\":[\"development\",\"financial software\",\"monitoring\",\"testing\"],\"articleSection\":[\"Brokerage Business\",\"Fintech\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/devexperts.com\/blog\/maintaining-trading-platforms-uptime-through-turbulent-markets\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/devexperts.com\/blog\/maintaining-trading-platforms-uptime-through-turbulent-markets\/\",\"url\":\"https:\/\/devexperts.com\/blog\/maintaining-trading-platforms-uptime-through-turbulent-markets\/\",\"name\":\"Maintaining Trading Platforms Uptime Through Turbulent Markets\",\"isPartOf\":{\"@id\":\"https:\/\/devexperts.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/devexperts.com\/blog\/maintaining-trading-platforms-uptime-through-turbulent-markets\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/devexperts.com\/blog\/maintaining-trading-platforms-uptime-through-turbulent-markets\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/devexperts.com\/blog\/app\/uploads\/2020\/03\/Maintaining-Trading-Platforms-Uptime-Through-Turbulent-Markets-scaled.jpg\",\"datePublished\":\"2020-03-31T09:16:34+00:00\",\"dateModified\":\"2024-01-31T12:16:24+00:00\",\"description\":\"Essential best practices to relieve the strain on brokers' trading systems during times of high market volatility and surges of market data.\",\"breadcrumb\":{\"@id\":\"https:\/\/devexperts.com\/blog\/maintaining-trading-platforms-uptime-through-turbulent-markets\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/devexperts.com\/blog\/maintaining-trading-platforms-uptime-through-turbulent-markets\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/devexperts.com\/blog\/maintaining-trading-platforms-uptime-through-turbulent-markets\/#primaryimage\",\"url\":\"https:\/\/devexperts.com\/blog\/app\/uploads\/2020\/03\/Maintaining-Trading-Platforms-Uptime-Through-Turbulent-Markets-scaled.jpg\",\"contentUrl\":\"https:\/\/devexperts.com\/blog\/app\/uploads\/2020\/03\/Maintaining-Trading-Platforms-Uptime-Through-Turbulent-Markets-scaled.jpg\",\"width\":2560,\"height\":467},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/devexperts.com\/blog\/maintaining-trading-platforms-uptime-through-turbulent-markets\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/devexperts.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Maintaining Trading Platforms Uptime Through Turbulent Markets\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/devexperts.com\/blog\/#website\",\"url\":\"https:\/\/devexperts.com\/blog\/\",\"name\":\"Devexperts Blog\",\"description\":\"We make complex finance ideas on technology, innovation and business simple\",\"publisher\":{\"@id\":\"https:\/\/devexperts.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/devexperts.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/devexperts.com\/blog\/#organization\",\"name\":\"Devexperts LLC\",\"url\":\"https:\/\/devexperts.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/devexperts.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/devexperts.com\/blog\/app\/uploads\/2019\/08\/DX-logo.png\",\"contentUrl\":\"https:\/\/devexperts.com\/blog\/app\/uploads\/2019\/08\/DX-logo.png\",\"width\":167,\"height\":30,\"caption\":\"Devexperts LLC\"},\"image\":{\"@id\":\"https:\/\/devexperts.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/devexperts\/\",\"https:\/\/x.com\/devexperts\",\"https:\/\/www.linkedin.com\/company\/devexperts\",\"https:\/\/www.youtube.com\/channel\/UCF3FRmes2KrcVsTXQ1aAB5w\/featured\"]}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Maintaining Trading Platforms Uptime Through Turbulent Markets","description":"Essential best practices to relieve the strain on brokers' trading systems during times of high market volatility and surges of market data.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/devexperts.com\/blog\/maintaining-trading-platforms-uptime-through-turbulent-markets\/","og_locale":"en_US","og_type":"article","og_title":"Maintaining Trading Platforms Uptime Through Turbulent Markets","og_description":"Essential best practices to relieve the strain on brokers' trading systems during times of high market volatility and surges of market data.","og_url":"https:\/\/devexperts.com\/blog\/maintaining-trading-platforms-uptime-through-turbulent-markets\/","og_site_name":"Devexperts Blog","article_publisher":"https:\/\/www.facebook.com\/devexperts\/","article_published_time":"2020-03-31T09:16:34+00:00","article_modified_time":"2024-01-31T12:16:24+00:00","og_image":[{"width":1200,"height":630,"url":"https:\/\/devexperts.com\/blog\/app\/uploads\/2020\/03\/maintaining-trading-platforms-uptime-1.png","type":"image\/png"}],"author":"Alexander Volkov","twitter_card":"summary_large_image","twitter_creator":"@devexperts","twitter_site":"@devexperts","twitter_misc":{"Written by":"Alexander Volkov","Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":["Article","BlogPosting"],"@id":"https:\/\/devexperts.com\/blog\/maintaining-trading-platforms-uptime-through-turbulent-markets\/#article","isPartOf":{"@id":"https:\/\/devexperts.com\/blog\/maintaining-trading-platforms-uptime-through-turbulent-markets\/"},"author":{"name":"Alexander Volkov"},"headline":"Maintaining Trading Platforms Uptime Through Turbulent Markets","datePublished":"2020-03-31T09:16:34+00:00","dateModified":"2024-01-31T12:16:24+00:00","mainEntityOfPage":{"@id":"https:\/\/devexperts.com\/blog\/maintaining-trading-platforms-uptime-through-turbulent-markets\/"},"wordCount":1168,"commentCount":0,"publisher":{"@id":"https:\/\/devexperts.com\/blog\/#organization"},"image":{"@id":"https:\/\/devexperts.com\/blog\/maintaining-trading-platforms-uptime-through-turbulent-markets\/#primaryimage"},"thumbnailUrl":"https:\/\/devexperts.com\/blog\/app\/uploads\/2020\/03\/Maintaining-Trading-Platforms-Uptime-Through-Turbulent-Markets-scaled.jpg","keywords":["development","financial software","monitoring","testing"],"articleSection":["Brokerage Business","Fintech"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/devexperts.com\/blog\/maintaining-trading-platforms-uptime-through-turbulent-markets\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/devexperts.com\/blog\/maintaining-trading-platforms-uptime-through-turbulent-markets\/","url":"https:\/\/devexperts.com\/blog\/maintaining-trading-platforms-uptime-through-turbulent-markets\/","name":"Maintaining Trading Platforms Uptime Through Turbulent Markets","isPartOf":{"@id":"https:\/\/devexperts.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/devexperts.com\/blog\/maintaining-trading-platforms-uptime-through-turbulent-markets\/#primaryimage"},"image":{"@id":"https:\/\/devexperts.com\/blog\/maintaining-trading-platforms-uptime-through-turbulent-markets\/#primaryimage"},"thumbnailUrl":"https:\/\/devexperts.com\/blog\/app\/uploads\/2020\/03\/Maintaining-Trading-Platforms-Uptime-Through-Turbulent-Markets-scaled.jpg","datePublished":"2020-03-31T09:16:34+00:00","dateModified":"2024-01-31T12:16:24+00:00","description":"Essential best practices to relieve the strain on brokers' trading systems during times of high market volatility and surges of market data.","breadcrumb":{"@id":"https:\/\/devexperts.com\/blog\/maintaining-trading-platforms-uptime-through-turbulent-markets\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/devexperts.com\/blog\/maintaining-trading-platforms-uptime-through-turbulent-markets\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/devexperts.com\/blog\/maintaining-trading-platforms-uptime-through-turbulent-markets\/#primaryimage","url":"https:\/\/devexperts.com\/blog\/app\/uploads\/2020\/03\/Maintaining-Trading-Platforms-Uptime-Through-Turbulent-Markets-scaled.jpg","contentUrl":"https:\/\/devexperts.com\/blog\/app\/uploads\/2020\/03\/Maintaining-Trading-Platforms-Uptime-Through-Turbulent-Markets-scaled.jpg","width":2560,"height":467},{"@type":"BreadcrumbList","@id":"https:\/\/devexperts.com\/blog\/maintaining-trading-platforms-uptime-through-turbulent-markets\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/devexperts.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Maintaining Trading Platforms Uptime Through Turbulent Markets"}]},{"@type":"WebSite","@id":"https:\/\/devexperts.com\/blog\/#website","url":"https:\/\/devexperts.com\/blog\/","name":"Devexperts Blog","description":"We make complex finance ideas on technology, innovation and business simple","publisher":{"@id":"https:\/\/devexperts.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/devexperts.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/devexperts.com\/blog\/#organization","name":"Devexperts LLC","url":"https:\/\/devexperts.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/devexperts.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/devexperts.com\/blog\/app\/uploads\/2019\/08\/DX-logo.png","contentUrl":"https:\/\/devexperts.com\/blog\/app\/uploads\/2019\/08\/DX-logo.png","width":167,"height":30,"caption":"Devexperts LLC"},"image":{"@id":"https:\/\/devexperts.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/devexperts\/","https:\/\/x.com\/devexperts","https:\/\/www.linkedin.com\/company\/devexperts","https:\/\/www.youtube.com\/channel\/UCF3FRmes2KrcVsTXQ1aAB5w\/featured"]}]}},"_links":{"self":[{"href":"https:\/\/devexperts.com\/blog\/wp-json\/wp\/v2\/posts\/2026","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devexperts.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devexperts.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devexperts.com\/blog\/wp-json\/wp\/v2\/users\/39"}],"replies":[{"embeddable":true,"href":"https:\/\/devexperts.com\/blog\/wp-json\/wp\/v2\/comments?post=2026"}],"version-history":[{"count":15,"href":"https:\/\/devexperts.com\/blog\/wp-json\/wp\/v2\/posts\/2026\/revisions"}],"predecessor-version":[{"id":7402,"href":"https:\/\/devexperts.com\/blog\/wp-json\/wp\/v2\/posts\/2026\/revisions\/7402"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devexperts.com\/blog\/wp-json\/wp\/v2\/media\/2031"}],"wp:attachment":[{"href":"https:\/\/devexperts.com\/blog\/wp-json\/wp\/v2\/media?parent=2026"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devexperts.com\/blog\/wp-json\/wp\/v2\/categories?post=2026"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devexperts.com\/blog\/wp-json\/wp\/v2\/tags?post=2026"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}