{"id":50959,"date":"2020-07-02T09:40:53","date_gmt":"2020-07-02T13:40:53","guid":{"rendered":"https:\/\/ibkrcampus.com\/?p=50959"},"modified":"2023-03-14T09:34:44","modified_gmt":"2023-03-14T13:34:44","slug":"python-itertools-tutorial-part-v","status":"publish","type":"post","link":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/python-itertools-tutorial-part-v\/","title":{"rendered":"Python Itertools Tutorial \u2013 Part V"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\"><em>Get up-to-speed in this series with<\/em> <em><a href=\"\/campus\/ibkr-quant-news\/python-itertools-tutorial-part-i\/\">Part I<\/a>,\u00a0<a href=\"\/campus\/ibkr-quant-news\/python-itertools-tutorial-part-ii\/\">Part II<\/a>,\u00a0 <a href=\"\/campus\/ibkr-quant-news\/python-itertools-tutorial-part-iii\/\">Part III<\/a>\u00a0and Part IV.<\/em><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>The islice() iterator<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This iterator has four parameters which can be passed, the element, starting element variable, ending variable and the number of elements to be skipped.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Suppose, we wanted the Adj. Close price every third day, we would write the code as follows:<\/p>\n\n\n\n<p style=\"background-color:#fcfcdb;font-size:11px\" class=\"has-background\">\n# Islice() itertool<br>\n# data = tesla[&#8216;daily_returns&#8217;]<br>\nselection = itertools.islice(tesla[&#8216;Adj Close&#8217;], 0, 15,2)<br>\nfor each in selection:<br>\n    print(each)\n<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The output would be as follows:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">743.6199951171875<br>749.5<br>703.47998046875<br>645.3300170898438<br>560.5499877929688<br>445.07000732421875<br>361.2200012207031<br>427.5299987792969<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Well, these were some terminating iterators. Now, we will see the next type of iterators, which are more concerned with the selection and the arrangement of the values.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Combinatoric iterators<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">We have all studied permutations and combinations before. These iterators make it really easy to list down all the possible values in a simple manner. Let\u2019s start with the first one right away.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>The combinations() iterator<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">As the name specifies, this iterator helps us illustrate all the possible combinations present in the list. The only parameters we have to pass are the elements and the number of values in a combination. Let\u2019s see it in action right now:<\/p>\n\n\n\n<p style=\"background-color:#fcfcdb;font-size:11px\" class=\"has-background\">\n# Combinations itertool<br>\nstocks_NYSE = [&#8216;TSLA&#8217;, &#8216;MSFT&#8217;, &#8216;NVDA&#8217;, &#8216;GOOGL&#8217; , &#8216;AAPL&#8217; , &#8216;INTC&#8217;]<br>\nresult = itertools.combinations(stocks_NYSE, 2)<br>\nfor each in result:<br>\n    print(each)\n<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The output will be as follows:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">(&#8216;TSLA&#8217;, &#8216;MSFT&#8217;)<br>(&#8216;TSLA&#8217;, &#8216;NVDA&#8217;)<br>(&#8216;TSLA&#8217;, &#8216;GOOGL&#8217;)<br>(&#8216;TSLA&#8217;, &#8216;AAPL&#8217;)<br>(&#8216;TSLA&#8217;, &#8216;INTC&#8217;)<br>(&#8216;MSFT&#8217;, &#8216;NVDA&#8217;)<br>(&#8216;MSFT&#8217;, &#8216;GOOGL&#8217;)<br>(&#8216;MSFT&#8217;, &#8216;AAPL&#8217;)<br>(&#8216;MSFT&#8217;, &#8216;INTC&#8217;)<br>(&#8216;NVDA&#8217;, &#8216;GOOGL&#8217;)<br>(&#8216;NVDA&#8217;, &#8216;AAPL&#8217;)<br>(&#8216;NVDA&#8217;, &#8216;INTC&#8217;)<br>(&#8216;GOOGL&#8217;, &#8216;AAPL&#8217;)<br>(&#8216;GOOGL&#8217;, &#8216;INTC&#8217;)<br>(&#8216;AAPL&#8217;, &#8216;INTC&#8217;)<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>In the next installment, the author will discuss<\/em>&nbsp;<em>the combinations_with_replacement() iterator<\/em>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Visit&nbsp;<a href=\"https:\/\/www.quantinsti.com\/\">https:\/\/www.quantinsti.com\/<\/a>&nbsp;for ready-to-use Python functions as applied in trading and data analysis.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>QuantInsti reviews the four parameters of the islice() iterator: the element, starting element variable, ending variable and the number of elements to be skipped.<\/p>\n","protected":false},"author":91,"featured_media":50883,"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,5615,7934,7933,806,7935,7460,5614,852,1224,595,6674],"contributors-categories":[13654],"class_list":["post-50959","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-argument","tag-combinations-iterator","tag-combinatoric-iterators","tag-data-science","tag-islice-iterator","tag-iterator","tag-lambda","tag-machine-learning","tag-pandas","tag-python","tag-yfinance","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 v27.9) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Python Itertools Tutorial \u2013 Part V | IBKR Quant<\/title>\n<meta name=\"description\" content=\"QuantInsti reviews the four parameters of the islice() iterator: the element, starting element variable, ending variable and the number of elements to...\" \/>\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\/50959\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Python Itertools Tutorial \u2013 Part V | IBKR Quant Blog\" \/>\n<meta property=\"og:description\" content=\"QuantInsti reviews the four parameters of the islice() iterator: the element, starting element variable, ending variable and the number of elements to be skipped.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/python-itertools-tutorial-part-v\/\" \/>\n<meta property=\"og:site_name\" content=\"IBKR Campus US\" \/>\n<meta property=\"article:published_time\" content=\"2020-07-02T13:40:53+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-03-14T13:34:44+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2020\/07\/quant-code-abstract.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"900\" \/>\n\t<meta property=\"og:image:height\" content=\"550\" \/>\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=\"2 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\\\/python-itertools-tutorial-part-v\\\/#article\",\n\t            \"isPartOf\": {\n\t                \"@id\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/ibkr-quant-news\\\/python-itertools-tutorial-part-v\\\/\"\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\": \"Python Itertools Tutorial \u2013 Part V\",\n\t            \"datePublished\": \"2020-07-02T13:40:53+00:00\",\n\t            \"dateModified\": \"2023-03-14T13:34:44+00:00\",\n\t            \"mainEntityOfPage\": {\n\t                \"@id\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/ibkr-quant-news\\\/python-itertools-tutorial-part-v\\\/\"\n\t            },\n\t            \"wordCount\": 287,\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\\\/python-itertools-tutorial-part-v\\\/#primaryimage\"\n\t            },\n\t            \"thumbnailUrl\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2020\\\/07\\\/quant-code-abstract.jpg\",\n\t            \"keywords\": [\n\t                \"Algo Trading\",\n\t                \"Argument\",\n\t                \"combinations() iterator\",\n\t                \"Combinatoric iterators\",\n\t                \"Data Science\",\n\t                \"islice() iterator\",\n\t                \"Iterator\",\n\t                \"Lambda\",\n\t                \"Machine Learning\",\n\t                \"Pandas\",\n\t                \"Python\",\n\t                \"yfinance\"\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\\\/python-itertools-tutorial-part-v\\\/\",\n\t            \"url\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/ibkr-quant-news\\\/python-itertools-tutorial-part-v\\\/\",\n\t            \"name\": \"Python Itertools Tutorial \u2013 Part V | 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\\\/python-itertools-tutorial-part-v\\\/#primaryimage\"\n\t            },\n\t            \"image\": {\n\t                \"@id\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/ibkr-quant-news\\\/python-itertools-tutorial-part-v\\\/#primaryimage\"\n\t            },\n\t            \"thumbnailUrl\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2020\\\/07\\\/quant-code-abstract.jpg\",\n\t            \"datePublished\": \"2020-07-02T13:40:53+00:00\",\n\t            \"dateModified\": \"2023-03-14T13:34:44+00:00\",\n\t            \"description\": \"QuantInsti reviews the four parameters of the islice() iterator: the element, starting element variable, ending variable and the number of elements to be skipped.\",\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\\\/python-itertools-tutorial-part-v\\\/\"\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\\\/python-itertools-tutorial-part-v\\\/#primaryimage\",\n\t            \"url\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2020\\\/07\\\/quant-code-abstract.jpg\",\n\t            \"contentUrl\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2020\\\/07\\\/quant-code-abstract.jpg\",\n\t            \"width\": 900,\n\t            \"height\": 550,\n\t            \"caption\": \"Quant\"\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":"Python Itertools Tutorial \u2013 Part V | IBKR Quant","description":"QuantInsti reviews the four parameters of the islice() iterator: the element, starting element variable, ending variable and the number of elements to...","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\/50959\/","og_locale":"en_US","og_type":"article","og_title":"Python Itertools Tutorial \u2013 Part V | IBKR Quant Blog","og_description":"QuantInsti reviews the four parameters of the islice() iterator: the element, starting element variable, ending variable and the number of elements to be skipped.","og_url":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/python-itertools-tutorial-part-v\/","og_site_name":"IBKR Campus US","article_published_time":"2020-07-02T13:40:53+00:00","article_modified_time":"2023-03-14T13:34:44+00:00","og_image":[{"width":900,"height":550,"url":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2020\/07\/quant-code-abstract.jpg","type":"image\/jpeg"}],"author":"Rekhit Pachanekar","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Rekhit Pachanekar","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"NewsArticle","@id":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/python-itertools-tutorial-part-v\/#article","isPartOf":{"@id":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/python-itertools-tutorial-part-v\/"},"author":{"name":"Rekhit Pachanekar","@id":"https:\/\/ibkrcampus.com\/campus\/#\/schema\/person\/8ab08253f8958ae9552fd7d7b5697370"},"headline":"Python Itertools Tutorial \u2013 Part V","datePublished":"2020-07-02T13:40:53+00:00","dateModified":"2023-03-14T13:34:44+00:00","mainEntityOfPage":{"@id":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/python-itertools-tutorial-part-v\/"},"wordCount":287,"publisher":{"@id":"https:\/\/ibkrcampus.com\/campus\/#organization"},"image":{"@id":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/python-itertools-tutorial-part-v\/#primaryimage"},"thumbnailUrl":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2020\/07\/quant-code-abstract.jpg","keywords":["Algo Trading","Argument","combinations() iterator","Combinatoric iterators","Data Science","islice() iterator","Iterator","Lambda","Machine Learning","Pandas","Python","yfinance"],"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\/python-itertools-tutorial-part-v\/","url":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/python-itertools-tutorial-part-v\/","name":"Python Itertools Tutorial \u2013 Part V | IBKR Quant Blog","isPartOf":{"@id":"https:\/\/ibkrcampus.com\/campus\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/python-itertools-tutorial-part-v\/#primaryimage"},"image":{"@id":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/python-itertools-tutorial-part-v\/#primaryimage"},"thumbnailUrl":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2020\/07\/quant-code-abstract.jpg","datePublished":"2020-07-02T13:40:53+00:00","dateModified":"2023-03-14T13:34:44+00:00","description":"QuantInsti reviews the four parameters of the islice() iterator: the element, starting element variable, ending variable and the number of elements to be skipped.","inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/python-itertools-tutorial-part-v\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/python-itertools-tutorial-part-v\/#primaryimage","url":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2020\/07\/quant-code-abstract.jpg","contentUrl":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2020\/07\/quant-code-abstract.jpg","width":900,"height":550,"caption":"Quant"},{"@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\/07\/quant-code-abstract.jpg","_links":{"self":[{"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/posts\/50959","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=50959"}],"version-history":[{"count":0,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/posts\/50959\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/media\/50883"}],"wp:attachment":[{"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/media?parent=50959"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/categories?post=50959"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/tags?post=50959"},{"taxonomy":"contributors-categories","embeddable":true,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/contributors-categories?post=50959"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}