{"id":217757,"date":"2025-01-24T11:33:49","date_gmt":"2025-01-24T16:33:49","guid":{"rendered":"https:\/\/ibkrcampus.com\/campus\/?p=217757"},"modified":"2025-01-24T11:33:57","modified_gmt":"2025-01-24T16:33:57","slug":"developing-trading-algorithms-with-python","status":"publish","type":"post","link":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/developing-trading-algorithms-with-python\/","title":{"rendered":"Developing Trading Algorithms with Python"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\"><em>The article &#8220;Developing Trading Algorithms with Python&#8221; was originally posted on <a href=\"https:\/\/www.pyquantnews.com\/free-python-resources\/developing-trading-algorithms-with-python\">PyQuant News<\/a>.<\/em><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong><em>The author of this article is not affiliated with Interactive Brokers. This software is in no way affiliated, endorsed, or approved by Interactive Brokers or any of its affiliates. It comes with absolutely no warranty and should not be used in actual trading unless the user can read and understand the source. The IBKR API team does not support this software<\/em><\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In the dynamic world of financial markets, trading algorithms are indispensable. These algorithms execute trading strategies automatically using pre-programmed instructions. Python, with its powerful libraries like Pandas and NumPy, greatly simplifies this process. This guide will walk you through developing basic trading algorithms using these tools.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-why-python-is-ideal-for-trading-algorithms\">Why Python is Ideal for Trading Algorithms<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Python has become the go-to language for many traders, and here&#8217;s why:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Ease of Use<\/strong>: Python&#8217;s syntax is intuitive and easy to read, making it accessible for beginners.&nbsp;<strong>Extensive Libraries<\/strong>: Libraries like Pandas and NumPy allow straightforward data manipulation.&nbsp;<strong>Community Support<\/strong>: With an active community, there are numerous resources and continuous improvements available.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-setting-up-your-environment\">Setting Up Your Environment<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Before diving into developing trading algorithms, ensure your environment is properly set up. First, download and install Python from the official website. Next, set up a virtual environment to manage dependencies efficiently. Lastly, use pip to install essential libraries like Pandas and NumPy.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-understanding-the-basics\">Understanding the Basics<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>The Power of Pandas and NumPy<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Pandas and NumPy are essential when developing trading algorithms in Python. Pandas, built on top of NumPy, provides data structures like DataFrames to handle large datasets seamlessly. NumPy, on the other hand, supports large, multi-dimensional arrays and matrices, along with a collection of mathematical functions to operate on them.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Fetching Financial Data<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">To develop effective trading algorithms, you need financial data. Several APIs provide this data, including Alpha Vantage, Yahoo Finance, and Quandl. For instance, you can fetch data from Yahoo Finance using the yfinance library.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-developing-a-simple-moving-average-strategy\"><strong>Developing a Simple Moving Average Strategy<\/strong><\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">A great starting point for beginners is the Simple Moving Average (SMA) strategy. This involves calculating the average price of a security over a specific period and making trading decisions based on the crossovers of different SMAs.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Step 1: Calculate the Moving Averages<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Using Pandas, you can easily compute moving averages. Calculate the 50-day and 200-day SMAs to get started.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Step 2: Define the Trading Rules<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The SMA strategy generates buy and sell signals based on the crossover of the 50-day and 200-day SMAs. A buy signal occurs when the 50-day SMA crosses above the 200-day SMA, and a sell signal occurs when the 50-day SMA crosses below the 200-day SMA.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Step 3: Implement the Trading Logic<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Create a function to generate buy and sell signals based on the SMA crossovers.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Step 4: Backtesting the Strategy<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Backtesting evaluates your strategy using historical data. It involves setting up initial capital, calculating positions, and simulating the portfolio&#8217;s value over time.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-enhancing-your-trading-algorithm\">Enhancing Your Trading Algorithm<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Incorporating Additional Indicators<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">To refine your trading algorithms, consider adding other technical indicators like the Relative Strength Index (RSI), Moving Average Convergence Divergence (MACD), and Bollinger Bands. For instance, calculating the RSI can provide additional insights into market conditions.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Risk Management<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Managing risk is crucial when developing trading algorithms. Implementing stop-loss and take-profit orders can help protect your capital. Additionally, consider position sizing to ensure you don\u2019t risk too much on a single trade.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-resources-for-further-learning\"><strong>Resources for Further Learning<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">To deepen your understanding of developing trading algorithms, several resources are available. QuantInsti offers courses on algorithmic trading and quantitative finance. The book &#8220;Python for Finance&#8221; by Yves Hilpisch provides an extensive introduction to financial data analytics and algorithmic trading. Additionally, the Pandas documentation is an excellent resource for mastering data manipulation.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Conclusion<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Developing trading algorithms in Python using Pandas and NumPy opens up numerous possibilities in algorithmic trading. Starting with a simple strategy like the SMA and gradually incorporating more indicators and risk management techniques will help you build a robust trading system. Continuous learning and adaptation are key to success in this field. With the right resources and persistence, you can harness the power of algorithmic trading to enhance your financial endeavors.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This guide will walk you through developing basic trading algorithms using these tools.<\/p>\n","protected":false},"author":1518,"featured_media":196081,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[339,349,338,341],"tags":[851,1225,1224,595,4135],"contributors-categories":[17813],"class_list":["post-217757","post","type-post","status-publish","format-standard","has-post-thumbnail","category-data-science","category-python-development","category-ibkr-quant-news","category-quant-development","tag-algo-trading","tag-numpy","tag-pandas","tag-python","tag-risk-management","contributors-categories-pyquantnews"],"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.0) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Developing Trading Algorithms with Python | IBKR Quant<\/title>\n<meta name=\"description\" content=\"This guide will walk you through developing basic trading algorithms using these tools.\" \/>\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\/217757\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Developing Trading Algorithms with Python\" \/>\n<meta property=\"og:description\" content=\"This guide will walk you through developing basic trading algorithms using these tools.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/developing-trading-algorithms-with-python\/\" \/>\n<meta property=\"og:site_name\" content=\"IBKR Campus US\" \/>\n<meta property=\"article:published_time\" content=\"2025-01-24T16:33:49+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-01-24T16:33:57+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2023\/09\/python-green-letters-cloud-programming-languages.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1000\" \/>\n\t<meta property=\"og:image:height\" content=\"563\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Jason\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Jason\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 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:\\\/\\\/ibkrcampus.com\\\/campus\\\/ibkr-quant-news\\\/developing-trading-algorithms-with-python\\\/#article\",\n\t            \"isPartOf\": {\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/ibkr-quant-news\\\/developing-trading-algorithms-with-python\\\/\"\n\t            },\n\t            \"author\": {\n\t                \"name\": \"Jason\",\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#\\\/schema\\\/person\\\/41e9bacc875edb13ed6288f4ffb2afec\"\n\t            },\n\t            \"headline\": \"Developing Trading Algorithms with Python\",\n\t            \"datePublished\": \"2025-01-24T16:33:49+00:00\",\n\t            \"dateModified\": \"2025-01-24T16:33:57+00:00\",\n\t            \"mainEntityOfPage\": {\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/ibkr-quant-news\\\/developing-trading-algorithms-with-python\\\/\"\n\t            },\n\t            \"wordCount\": 699,\n\t            \"commentCount\": 5,\n\t            \"publisher\": {\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#organization\"\n\t            },\n\t            \"image\": {\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/ibkr-quant-news\\\/developing-trading-algorithms-with-python\\\/#primaryimage\"\n\t            },\n\t            \"thumbnailUrl\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2023\\\/09\\\/python-green-letters-cloud-programming-languages.jpg\",\n\t            \"keywords\": [\n\t                \"Algo Trading\",\n\t                \"NumPy\",\n\t                \"Pandas\",\n\t                \"Python\",\n\t                \"risk management\"\n\t            ],\n\t            \"articleSection\": [\n\t                \"Data Science\",\n\t                \"Python Development\",\n\t                \"Quant\",\n\t                \"Quant Development\"\n\t            ],\n\t            \"inLanguage\": \"en-US\",\n\t            \"potentialAction\": [\n\t                {\n\t                    \"@type\": \"CommentAction\",\n\t                    \"name\": \"Comment\",\n\t                    \"target\": [\n\t                        \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/ibkr-quant-news\\\/developing-trading-algorithms-with-python\\\/#respond\"\n\t                    ]\n\t                }\n\t            ]\n\t        },\n\t        {\n\t            \"@type\": \"WebPage\",\n\t            \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/ibkr-quant-news\\\/developing-trading-algorithms-with-python\\\/\",\n\t            \"url\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/ibkr-quant-news\\\/developing-trading-algorithms-with-python\\\/\",\n\t            \"name\": \"Developing Trading Algorithms with Python | IBKR Campus US\",\n\t            \"isPartOf\": {\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/#website\"\n\t            },\n\t            \"primaryImageOfPage\": {\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/ibkr-quant-news\\\/developing-trading-algorithms-with-python\\\/#primaryimage\"\n\t            },\n\t            \"image\": {\n\t                \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/ibkr-quant-news\\\/developing-trading-algorithms-with-python\\\/#primaryimage\"\n\t            },\n\t            \"thumbnailUrl\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2023\\\/09\\\/python-green-letters-cloud-programming-languages.jpg\",\n\t            \"datePublished\": \"2025-01-24T16:33:49+00:00\",\n\t            \"dateModified\": \"2025-01-24T16:33:57+00:00\",\n\t            \"description\": \"This guide will walk you through developing basic trading algorithms using these tools.\",\n\t            \"inLanguage\": \"en-US\",\n\t            \"potentialAction\": [\n\t                {\n\t                    \"@type\": \"ReadAction\",\n\t                    \"target\": [\n\t                        \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/ibkr-quant-news\\\/developing-trading-algorithms-with-python\\\/\"\n\t                    ]\n\t                }\n\t            ]\n\t        },\n\t        {\n\t            \"@type\": \"ImageObject\",\n\t            \"inLanguage\": \"en-US\",\n\t            \"@id\": \"https:\\\/\\\/ibkrcampus.com\\\/campus\\\/ibkr-quant-news\\\/developing-trading-algorithms-with-python\\\/#primaryimage\",\n\t            \"url\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2023\\\/09\\\/python-green-letters-cloud-programming-languages.jpg\",\n\t            \"contentUrl\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/wp-content\\\/uploads\\\/sites\\\/2\\\/2023\\\/09\\\/python-green-letters-cloud-programming-languages.jpg\",\n\t            \"width\": 1000,\n\t            \"height\": 563,\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\\\/41e9bacc875edb13ed6288f4ffb2afec\",\n\t            \"name\": \"Jason\",\n\t            \"url\": \"https:\\\/\\\/www.interactivebrokers.com\\\/campus\\\/author\\\/jasonpyquantnews\\\/\"\n\t        }\n\t    ]\n\t}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Developing Trading Algorithms with Python | IBKR Quant","description":"This guide will walk you through developing basic trading algorithms using these tools.","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\/217757\/","og_locale":"en_US","og_type":"article","og_title":"Developing Trading Algorithms with Python","og_description":"This guide will walk you through developing basic trading algorithms using these tools.","og_url":"https:\/\/www.interactivebrokers.com\/campus\/ibkr-quant-news\/developing-trading-algorithms-with-python\/","og_site_name":"IBKR Campus US","article_published_time":"2025-01-24T16:33:49+00:00","article_modified_time":"2025-01-24T16:33:57+00:00","og_image":[{"width":1000,"height":563,"url":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2023\/09\/python-green-letters-cloud-programming-languages.jpg","type":"image\/jpeg"}],"author":"Jason","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Jason","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"NewsArticle","@id":"https:\/\/ibkrcampus.com\/campus\/ibkr-quant-news\/developing-trading-algorithms-with-python\/#article","isPartOf":{"@id":"https:\/\/ibkrcampus.com\/campus\/ibkr-quant-news\/developing-trading-algorithms-with-python\/"},"author":{"name":"Jason","@id":"https:\/\/ibkrcampus.com\/campus\/#\/schema\/person\/41e9bacc875edb13ed6288f4ffb2afec"},"headline":"Developing Trading Algorithms with Python","datePublished":"2025-01-24T16:33:49+00:00","dateModified":"2025-01-24T16:33:57+00:00","mainEntityOfPage":{"@id":"https:\/\/ibkrcampus.com\/campus\/ibkr-quant-news\/developing-trading-algorithms-with-python\/"},"wordCount":699,"commentCount":5,"publisher":{"@id":"https:\/\/ibkrcampus.com\/campus\/#organization"},"image":{"@id":"https:\/\/ibkrcampus.com\/campus\/ibkr-quant-news\/developing-trading-algorithms-with-python\/#primaryimage"},"thumbnailUrl":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2023\/09\/python-green-letters-cloud-programming-languages.jpg","keywords":["Algo Trading","NumPy","Pandas","Python","risk management"],"articleSection":["Data Science","Python Development","Quant","Quant Development"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/ibkrcampus.com\/campus\/ibkr-quant-news\/developing-trading-algorithms-with-python\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/ibkrcampus.com\/campus\/ibkr-quant-news\/developing-trading-algorithms-with-python\/","url":"https:\/\/ibkrcampus.com\/campus\/ibkr-quant-news\/developing-trading-algorithms-with-python\/","name":"Developing Trading Algorithms with Python | IBKR Campus US","isPartOf":{"@id":"https:\/\/ibkrcampus.com\/campus\/#website"},"primaryImageOfPage":{"@id":"https:\/\/ibkrcampus.com\/campus\/ibkr-quant-news\/developing-trading-algorithms-with-python\/#primaryimage"},"image":{"@id":"https:\/\/ibkrcampus.com\/campus\/ibkr-quant-news\/developing-trading-algorithms-with-python\/#primaryimage"},"thumbnailUrl":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2023\/09\/python-green-letters-cloud-programming-languages.jpg","datePublished":"2025-01-24T16:33:49+00:00","dateModified":"2025-01-24T16:33:57+00:00","description":"This guide will walk you through developing basic trading algorithms using these tools.","inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/ibkrcampus.com\/campus\/ibkr-quant-news\/developing-trading-algorithms-with-python\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/ibkrcampus.com\/campus\/ibkr-quant-news\/developing-trading-algorithms-with-python\/#primaryimage","url":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2023\/09\/python-green-letters-cloud-programming-languages.jpg","contentUrl":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2023\/09\/python-green-letters-cloud-programming-languages.jpg","width":1000,"height":563,"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\/41e9bacc875edb13ed6288f4ffb2afec","name":"Jason","url":"https:\/\/www.interactivebrokers.com\/campus\/author\/jasonpyquantnews\/"}]}},"jetpack_featured_media_url":"https:\/\/www.interactivebrokers.com\/campus\/wp-content\/uploads\/sites\/2\/2023\/09\/python-green-letters-cloud-programming-languages.jpg","_links":{"self":[{"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/posts\/217757","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\/1518"}],"replies":[{"embeddable":true,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/comments?post=217757"}],"version-history":[{"count":0,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/posts\/217757\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/media\/196081"}],"wp:attachment":[{"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/media?parent=217757"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/categories?post=217757"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/tags?post=217757"},{"taxonomy":"contributors-categories","embeddable":true,"href":"https:\/\/ibkrcampus.com\/campus\/wp-json\/wp\/v2\/contributors-categories?post=217757"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}