{"id":69204,"date":"2020-12-14T10:30:20","date_gmt":"2020-12-14T15:30:20","guid":{"rendered":"https:\/\/ibkrcampus.com\/?p=69204"},"modified":"2022-11-21T09:46:45","modified_gmt":"2022-11-21T14:46:45","slug":"how-to-create-kalman-filter-in-python-part-ii","status":"publish","type":"post","link":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/how-to-create-kalman-filter-in-python-part-ii\/","title":{"rendered":"How to Create Kalman Filter in Python &#8211; Part II"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\"><em>See <a href=\"\/campus\/ibkr-quant-news\/how-to-create-kalman-filter-in-python\/\">Part I<\/a> of this series to get started with the Statistical terms and concepts used in Kalman Filter.<\/em><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"equations-in-kalman-filter\">Equations in Kalman Filter<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Kalman Filter is a type of prediction algorithm. Thus, the Kalman filter\u2019s success depends on our estimated values and its variance from the actual values. In Kalman Filter, we assume that depending on the previous state, we can predict the next state.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">At the outset, we would like to clarify that this article on the Kalman filter tutorial is not about the derivation of the equations but trying to explain how the equations help us in estimating or predicting a value. Now, as we said earlier, we are trying to predict the value of something which cannot be directly measured. Thus, there will obviously be some error in the predicted value and the actual value.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If the system itself contains some errors, then it is called measurement noise. For example, if the weighing scales itself shows different readings for the same football player, it will be measurement noise.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If the process when the measurement takes place has certain factors which are not taken into account, then it is called as process noise. For example, if we are predicting the Apollo Rocket\u2019s position, and we could not account for the wind during the initial blast off phase, then we will encounter some error between the actual location and the predicted location.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Kalman Filter is used to reduce these errors and successfully predict the next state.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Now, supposing we pick out one player and weigh that individual 10 times, we might get different values due to some measurement errors.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Mr. Rudolf Kalman developed the status update equation taking into account three values, ie<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>True value<\/li><li>The estimated or predicted value<\/li><li>Measured value<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"status-update-equation\">Status update equation<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">The&nbsp;<strong>status update equation<\/strong>&nbsp;is as follows:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Current state estimated value<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">= Predicted value of current state + Kalman Gain * ( measured value &#8211; predicted value of the state)<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"624\" height=\"251\" data-src=\"\/campus\/wp-content\/uploads\/sites\/2\/2020\/12\/Kalman-Filter-Tutorial-Steps-quantinsti.png\" alt=\"\" class=\"wp-image-69217 lazyload\" data-srcset=\"https:\/\/ibkrcampus.com\/campus\/wp-content\/uploads\/sites\/2\/2020\/12\/Kalman-Filter-Tutorial-Steps-quantinsti.png 624w, https:\/\/ibkrcampus.com\/campus\/wp-content\/uploads\/sites\/2\/2020\/12\/Kalman-Filter-Tutorial-Steps-quantinsti-300x121.png 300w\" data-sizes=\"(max-width: 624px) 100vw, 624px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 624px; aspect-ratio: 624\/251;\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Let us understand this equation further.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In our example, we can say that given the measured values of all ten measurements, we will take the average of the values to estimate the true value.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">To work this equation, we take one measurement which becomes the measured value. In the initial step, we guess the predicted value.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Now since the average is computed, in this example, the Kalman gain would be (1\/N) as with each successive iteration, the second part of the equation would be decreasing, thus giving us a better-estimated value.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">We should note that the current estimated value becomes the predicted value of the current state in the next iteration.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For now, we knew that the actual weight is constant, and hence it was easy to predict the estimated value. But what if we had to take into account that the state of the system (which was the weight in this case) changes. For that we will now move on to the next equation in the Kalman Filter tutorial i.e. State extrapolation.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Stay tuned for the next installment, in which the Rekhit will explain how to work with State extrapolation<\/em> <em>equation.<\/em><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Download the full code:&nbsp;<a href=\"https:\/\/blog.quantinsti.com\/kalman-filter\/\">https:\/\/blog.quantinsti.com\/kalman-filter\/<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><small><em>All data and information provided in this article are for informational purposes only. QuantInsti\u00ae makes no representations as to accuracy, completeness, currentness, suitability, or validity of any information in this article and will not be liable for any errors, omissions, or delays in this information or any losses, injuries, or damages arising from its display or use. All information is provided on an as-is basis.<\/em><\/small><\/p>\n","protected":false},"excerpt":{"rendered":"<p>QuantInsti demonstrates Kalman Filter, a type of prediction algorithm. Download ready-to-use code for Python.<\/p>\n","protected":false},"author":91,"featured_media":36044,"comment_status":"closed","ping_status":"open","sticky":true,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[339,343,349,338,350,341,344],"tags":[851,8778,8920,4272,8710,8777,8445,595,1048,4271,8155],"contributors-categories":[13654],"class_list":["post-69204","post","type-post","status-publish","format-standard","has-post-thumbnail","category-data-science","category-programing-languages","category-python-development","category-ibkr-quant-news","category-quant-asia-pacific","category-quant-development","category-quant-regions","tag-algo-trading","tag-bessels-correction","tag-equations-in-kalman-filter","tag-kalman-filter","tag-mathematical-finance","tag-normal-distribution","tag-pairs-trading","tag-python","tag-standard-deviation","tag-statistical-arbitrage","tag-variance","contributors-categories-quantinsti"],"pp_statuses_selecting_workflow":false,"pp_workflow_action":"current","pp_status_selection":"publish","acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.9 (Yoast SEO v28.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>How to Create Kalman Filter in Python &#8211; Part II<\/title>\n<meta name=\"description\" content=\"QuantInsti demonstrates Kalman Filter, a type of prediction algorithm. Download ready-to-use code for Python.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.interactivebrokers.com\/campus\/wp-json\/wp\/v2\/posts\/69204\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to Create Kalman Filter in Python - Part II | IBKR Quant Blog\" \/>\n<meta property=\"og:description\" content=\"QuantInsti demonstrates Kalman Filter, a type of prediction algorithm. Download ready-to-use code for Python.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/how-to-create-kalman-filter-in-python-part-ii\/\" \/>\n<meta property=\"og:site_name\" content=\"IBKR Campus US\" \/>\n<meta property=\"article:published_time\" content=\"2020-12-14T15:30:20+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-11-21T14:46:45+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2020\/02\/python-binary.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"900\" \/>\n\t<meta property=\"og:image:height\" content=\"540\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Rekhit Pachanekar\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Rekhit Pachanekar\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\n\t    \"@context\": \"https:\\\/\\\/schema.org\",\n\t    \"@graph\": [\n\t        {\n\t            \"@type\": \"NewsArticle\",\n\t            \"@id\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/ibkr-quant-news\\\/how-to-create-kalman-filter-in-python-part-ii\\\/#article\",\n\t            \"isPartOf\": {\n\t                \"@id\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/ibkr-quant-news\\\/how-to-create-kalman-filter-in-python-part-ii\\\/\"\n\t            },\n\t            \"author\": {\n\t                \"name\": \"Rekhit Pachanekar\",\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#\\\/schema\\\/person\\\/8ab08253f8958ae9552fd7d7b5697370\"\n\t            },\n\t            \"headline\": \"How to Create Kalman Filter in Python &#8211; Part II\",\n\t            \"datePublished\": \"2020-12-14T15:30:20+00:00\",\n\t            \"dateModified\": \"2022-11-21T14:46:45+00:00\",\n\t            \"mainEntityOfPage\": {\n\t                \"@id\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/ibkr-quant-news\\\/how-to-create-kalman-filter-in-python-part-ii\\\/\"\n\t            },\n\t            \"wordCount\": 603,\n\t            \"publisher\": {\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#organization\"\n\t            },\n\t            \"image\": {\n\t                \"@id\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/ibkr-quant-news\\\/how-to-create-kalman-filter-in-python-part-ii\\\/#primaryimage\"\n\t            },\n\t            \"thumbnailUrl\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2020\\\/02\\\/python-binary.jpg\",\n\t            \"keywords\": [\n\t                \"Algo Trading\",\n\t                \"Bessel's Correction\",\n\t                \"Equations in Kalman Filter\",\n\t                \"Kalman filter\",\n\t                \"Mathematical Finance\",\n\t                \"normal distribution\",\n\t                \"Pairs Trading\",\n\t                \"Python\",\n\t                \"Standard Deviation\",\n\t                \"Statistical Arbitrage\",\n\t                \"Variance\"\n\t            ],\n\t            \"articleSection\": [\n\t                \"Data Science\",\n\t                \"Programming Languages\",\n\t                \"Python Development\",\n\t                \"Quant\",\n\t                \"Quant Asia Pacific\",\n\t                \"Quant Development\",\n\t                \"Quant Regions\"\n\t            ],\n\t            \"inLanguage\": \"en-US\"\n\t        },\n\t        {\n\t            \"@type\": \"WebPage\",\n\t            \"@id\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/ibkr-quant-news\\\/how-to-create-kalman-filter-in-python-part-ii\\\/\",\n\t            \"url\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/ibkr-quant-news\\\/how-to-create-kalman-filter-in-python-part-ii\\\/\",\n\t            \"name\": \"How to Create Kalman Filter in Python - Part II | IBKR Quant Blog\",\n\t            \"isPartOf\": {\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#website\"\n\t            },\n\t            \"primaryImageOfPage\": {\n\t                \"@id\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/ibkr-quant-news\\\/how-to-create-kalman-filter-in-python-part-ii\\\/#primaryimage\"\n\t            },\n\t            \"image\": {\n\t                \"@id\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/ibkr-quant-news\\\/how-to-create-kalman-filter-in-python-part-ii\\\/#primaryimage\"\n\t            },\n\t            \"thumbnailUrl\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2020\\\/02\\\/python-binary.jpg\",\n\t            \"datePublished\": \"2020-12-14T15:30:20+00:00\",\n\t            \"dateModified\": \"2022-11-21T14:46:45+00:00\",\n\t            \"description\": \"QuantInsti demonstrates Kalman Filter, a type of prediction algorithm. Download ready-to-use code for Python.\",\n\t            \"inLanguage\": \"en-US\",\n\t            \"potentialAction\": [\n\t                {\n\t                    \"@type\": \"ReadAction\",\n\t                    \"target\": [\n\t                        \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/ibkr-quant-news\\\/how-to-create-kalman-filter-in-python-part-ii\\\/\"\n\t                    ]\n\t                }\n\t            ]\n\t        },\n\t        {\n\t            \"@type\": \"ImageObject\",\n\t            \"inLanguage\": \"en-US\",\n\t            \"@id\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/ibkr-quant-news\\\/how-to-create-kalman-filter-in-python-part-ii\\\/#primaryimage\",\n\t            \"url\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2020\\\/02\\\/python-binary.jpg\",\n\t            \"contentUrl\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2020\\\/02\\\/python-binary.jpg\",\n\t            \"width\": 900,\n\t            \"height\": 540,\n\t            \"caption\": \"Python\"\n\t        },\n\t        {\n\t            \"@type\": \"WebSite\",\n\t            \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#website\",\n\t            \"url\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/\",\n\t            \"name\": \"IBKR Campus US\",\n\t            \"description\": \"Financial Education from Interactive Brokers\",\n\t            \"publisher\": {\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#organization\"\n\t            },\n\t            \"potentialAction\": [\n\t                {\n\t                    \"@type\": \"SearchAction\",\n\t                    \"target\": {\n\t                        \"@type\": \"EntryPoint\",\n\t                        \"urlTemplate\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/?s={search_term_string}\"\n\t                    },\n\t                    \"query-input\": {\n\t                        \"@type\": \"PropertyValueSpecification\",\n\t                        \"valueRequired\": true,\n\t                        \"valueName\": \"search_term_string\"\n\t                    }\n\t                }\n\t            ],\n\t            \"inLanguage\": \"en-US\"\n\t        },\n\t        {\n\t            \"@type\": \"Organization\",\n\t            \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#organization\",\n\t            \"name\": \"Interactive Brokers\",\n\t            \"alternateName\": \"IBKR\",\n\t            \"url\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/\",\n\t            \"logo\": {\n\t                \"@type\": \"ImageObject\",\n\t                \"inLanguage\": \"en-US\",\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#\\\/schema\\\/logo\\\/image\\\/\",\n\t                \"url\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2024\\\/05\\\/ibkr-campus-logo.jpg\",\n\t                \"contentUrl\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2024\\\/05\\\/ibkr-campus-logo.jpg\",\n\t                \"width\": 669,\n\t                \"height\": 669,\n\t                \"caption\": \"Interactive Brokers\"\n\t            },\n\t            \"image\": {\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#\\\/schema\\\/logo\\\/image\\\/\"\n\t            },\n\t            \"publishingPrinciples\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/about-ibkr-campus\\\/\",\n\t            \"ethicsPolicy\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/cyber-security-notice\\\/\"\n\t        },\n\t        {\n\t            \"@type\": \"Person\",\n\t            \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#\\\/schema\\\/person\\\/8ab08253f8958ae9552fd7d7b5697370\",\n\t            \"name\": \"Rekhit Pachanekar\",\n\t            \"url\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/author\\\/rekhit\\\/\"\n\t        }\n\t    ]\n\t}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"How to Create Kalman Filter in Python &#8211; Part II","description":"QuantInsti demonstrates Kalman Filter, a type of prediction algorithm. Download ready-to-use code for Python.","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:\/\/www.interactivebrokers.com\/campus\/wp-json\/wp\/v2\/posts\/69204\/","og_locale":"en_US","og_type":"article","og_title":"How to Create Kalman Filter in Python - Part II | IBKR Quant Blog","og_description":"QuantInsti demonstrates Kalman Filter, a type of prediction algorithm. Download ready-to-use code for Python.","og_url":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/how-to-create-kalman-filter-in-python-part-ii\/","og_site_name":"IBKR Campus US","article_published_time":"2020-12-14T15:30:20+00:00","article_modified_time":"2022-11-21T14:46:45+00:00","og_image":[{"width":900,"height":540,"url":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2020\/02\/python-binary.jpg","type":"image\/jpeg"}],"author":"Rekhit Pachanekar","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Rekhit Pachanekar","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"NewsArticle","@id":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/how-to-create-kalman-filter-in-python-part-ii\/#article","isPartOf":{"@id":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/how-to-create-kalman-filter-in-python-part-ii\/"},"author":{"name":"Rekhit Pachanekar","@id":"https:\/\/ibkrcampus.com\/campus\/#\/schema\/person\/8ab08253f8958ae9552fd7d7b5697370"},"headline":"How to Create Kalman Filter in Python &#8211; Part II","datePublished":"2020-12-14T15:30:20+00:00","dateModified":"2022-11-21T14:46:45+00:00","mainEntityOfPage":{"@id":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/how-to-create-kalman-filter-in-python-part-ii\/"},"wordCount":603,"publisher":{"@id":"https:\/\/ibkrcampus.com\/campus\/#organization"},"image":{"@id":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/how-to-create-kalman-filter-in-python-part-ii\/#primaryimage"},"thumbnailUrl":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2020\/02\/python-binary.jpg","keywords":["Algo Trading","Bessel's Correction","Equations in Kalman Filter","Kalman filter","Mathematical Finance","normal distribution","Pairs Trading","Python","Standard Deviation","Statistical Arbitrage","Variance"],"articleSection":["Data Science","Programming Languages","Python Development","Quant","Quant Asia Pacific","Quant Development","Quant Regions"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/how-to-create-kalman-filter-in-python-part-ii\/","url":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/how-to-create-kalman-filter-in-python-part-ii\/","name":"How to Create Kalman Filter in Python - Part II | IBKR Quant Blog","isPartOf":{"@id":"https:\/\/ibkrcampus.com\/campus\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/how-to-create-kalman-filter-in-python-part-ii\/#primaryimage"},"image":{"@id":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/how-to-create-kalman-filter-in-python-part-ii\/#primaryimage"},"thumbnailUrl":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2020\/02\/python-binary.jpg","datePublished":"2020-12-14T15:30:20+00:00","dateModified":"2022-11-21T14:46:45+00:00","description":"QuantInsti demonstrates Kalman Filter, a type of prediction algorithm. Download ready-to-use code for Python.","inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/how-to-create-kalman-filter-in-python-part-ii\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/how-to-create-kalman-filter-in-python-part-ii\/#primaryimage","url":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2020\/02\/python-binary.jpg","contentUrl":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2020\/02\/python-binary.jpg","width":900,"height":540,"caption":"Python"},{"@type":"WebSite","@id":"https:\/\/ibkrcampus.com\/campus\/#website","url":"https:\/\/ibkrcampus.com\/campus\/","name":"IBKR Campus US","description":"Financial Education from Interactive Brokers","publisher":{"@id":"https:\/\/ibkrcampus.com\/campus\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/ibkrcampus.com\/campus\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/ibkrcampus.com\/campus\/#organization","name":"Interactive Brokers","alternateName":"IBKR","url":"https:\/\/ibkrcampus.com\/campus\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/ibkrcampus.com\/campus\/#\/schema\/logo\/image\/","url":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2024\/05\/ibkr-campus-logo.jpg","contentUrl":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2024\/05\/ibkr-campus-logo.jpg","width":669,"height":669,"caption":"Interactive Brokers"},"image":{"@id":"https:\/\/ibkrcampus.com\/campus\/#\/schema\/logo\/image\/"},"publishingPrinciples":"https:\/\/www.interactivebrokers.com\/campus\/about-ibkr-campus\/","ethicsPolicy":"https:\/\/www.interactivebrokers.com\/campus\/cyber-security-notice\/"},{"@type":"Person","@id":"https:\/\/ibkrcampus.com\/campus\/#\/schema\/person\/8ab08253f8958ae9552fd7d7b5697370","name":"Rekhit Pachanekar","url":"https:\/\/www.interactivebrokers.com\/campus\/author\/rekhit\/"}]}},"jetpack_featured_media_url":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2020\/02\/python-binary.jpg","_links":{"self":[{"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/posts\/69204","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/users\/91"}],"replies":[{"embeddable":true,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/comments?post=69204"}],"version-history":[{"count":0,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/posts\/69204\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/media\/36044"}],"wp:attachment":[{"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/media?parent=69204"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/categories?post=69204"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/tags?post=69204"},{"taxonomy":"contributors-categories","embeddable":true,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/contributors-categories?post=69204"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}