{"id":8,"date":"2024-11-12T22:21:26","date_gmt":"2024-11-12T22:21:26","guid":{"rendered":"https:\/\/blogs.oregonstate.edu\/connorschutze\/?p=8"},"modified":"2024-11-12T22:21:26","modified_gmt":"2024-11-12T22:21:26","slug":"project-blog-2","status":"publish","type":"post","link":"https:\/\/blogs.oregonstate.edu\/connorschutze\/2024\/11\/12\/project-blog-2\/","title":{"rendered":"Project Blog &#8211; 2"},"content":{"rendered":"\n<p>As I progressed through my capstone project, I have been working on \u201cCloud Based Algorithmic Trading Strategies for Individual Investors.\u201d Which has allowed me to learn more about investing strategies and software development. This project aims to bring algorithmic trading to individual investors through a modular cloud-based platform.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Investing Concepts<\/h2>\n\n\n\n<p>Algorithmic trading has provided an introduction to investing and trading strategies. Our platform empowers individual investors with tools usually resevered for professionals. For example, understanding concepts like \u201cdrawdown\u201d has been crucial. A drawdown represents a portfolio&#8217;s peak-to-trough decline during a specific period and helps measure the risk level associated with a particular strategy. The goal of minimizing drawdown has guided a lot of our design, especially in areas like trade signal generation and backtesting.<\/p>\n\n\n\n<p>In addition to learning about risk, I\u2019ve gained insight into strategies like the barbell method, which divides investments between low-risk and high-risk assets. The barbell strategy influences our platform\u2019s functionality, as it helps investors balance their portfolios. Learning these concepts will help in the future as I progress in developing my own investing strategies. <\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Building an  Algorithmic Trader<\/h2>\n\n\n\n<p>Developing the algorithmic trader required integrating various financial APIs, each serving specific data requirements. There are numerous options, many ranging in prices, with some going for thousands of dollars per month. Our design for this project utilizes free options that are reliably accurate for most of the required metrics.<\/p>\n\n\n\n<p>Options that had to be considered were how frequent data would be collected, either via a Websocket API or a simple REST API, both coming with advantages. For high frequency trading, a Websocket API is required. However, our platform is more focused on day trading with less frequent data requests. We also utilize several APIs to ensure our data is accurate and reliable for what it is being used for.<\/p>\n\n\n\n<p>This modular design simplifies data management and improves performance, as each component can operate independently. For example, during the backtesting phase, we can simulate trades on historical data to analyze algorithm performance without impacting real-time trading. This setup also enables the optimization of trading strategies based on past data, helping us refine algorithms before deployment. Each API has its limitations and constraints, so managing these efficiently has been crucial for ensuring data accuracy and staying within API rate limits.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Designing System Architecture<\/h2>\n\n\n\n<p>The project has also allowed me to develop my skills in system architecture and requirements gathering. From the beginning, we divided the platform into six core modules: Data Acquisition, Data Transformation, Trade Signal Generation, Order Execution, Post Processing &amp; Reporting, and User Interface &amp; Interaction. Each module is responsible for specific aspects of the trading workflow, from pulling in real-time market data to executing orders and generating performance reports for users\u200b.<\/p>\n\n\n\n<p>Creating a design document for the project was a significant step. It serves as a roadmap for development, detailing each module\u2019s purpose, the technologies used, and the data flow between components. This documentation is essential not only for our current team, but also for any future developers working on this project. I\u2019ve learned how valuable it is to clearly define requirements upfront, as this has allowed us to anticipate challenges and design a system that is flexible and scalable.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Leading the Team<\/h2>\n\n\n\n<p>Working on this project has given me the opportunity to take on a leadership role, and I\u2019ve found that delegating tasks effectively is just as important as contributing directly to development. Some of my team have yet to contribute to the project, whilst others require guidance to complete work. As the team member responsible for data acquisition and transformation, I\u2019ve coordinated with others working on areas like trading signal generation, backtesting, and user interface design.<\/p>\n\n\n\n<p>My experience leading this project has improved my communication skills and my ability to make decisions that benefit the project as a whole. I\u2019ve managed to strike a balance between guiding the team and handling core development work myself. This experience has been invaluable, especially for a project of this complexity, where a clear direction and efficient collaboration are crucial for success.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusion<\/h2>\n\n\n\n<p>Working on &#8220;Cloud-Based Algorithmic Trading Strategies for Individual Investors&#8221; has been a transformative experience. I\u2019ve gained hands-on experience with investment strategies, learned the intricacies of designing an algorithmic trading platform, and developed leadership skills that I\u2019ll carry forward into future projects. I am excited to continue working on this project and developing my software development skills further.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>As I progressed through my capstone project, I have been working on \u201cCloud Based Algorithmic Trading Strategies for Individual Investors.\u201d Which has allowed me to learn more about investing strategies and software development. This project aims to bring algorithmic trading to individual investors through a modular cloud-based platform. Investing Concepts Algorithmic trading has provided an [&hellip;]<\/p>\n","protected":false},"author":14540,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2],"tags":[],"class_list":["post-8","post","type-post","status-publish","format-standard","hentry","category-blog"],"_links":{"self":[{"href":"https:\/\/blogs.oregonstate.edu\/connorschutze\/wp-json\/wp\/v2\/posts\/8","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.oregonstate.edu\/connorschutze\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.oregonstate.edu\/connorschutze\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.oregonstate.edu\/connorschutze\/wp-json\/wp\/v2\/users\/14540"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.oregonstate.edu\/connorschutze\/wp-json\/wp\/v2\/comments?post=8"}],"version-history":[{"count":1,"href":"https:\/\/blogs.oregonstate.edu\/connorschutze\/wp-json\/wp\/v2\/posts\/8\/revisions"}],"predecessor-version":[{"id":9,"href":"https:\/\/blogs.oregonstate.edu\/connorschutze\/wp-json\/wp\/v2\/posts\/8\/revisions\/9"}],"wp:attachment":[{"href":"https:\/\/blogs.oregonstate.edu\/connorschutze\/wp-json\/wp\/v2\/media?parent=8"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.oregonstate.edu\/connorschutze\/wp-json\/wp\/v2\/categories?post=8"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.oregonstate.edu\/connorschutze\/wp-json\/wp\/v2\/tags?post=8"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}