{"id":2489,"date":"2022-01-09T19:21:55","date_gmt":"2022-01-09T19:21:55","guid":{"rendered":"https:\/\/lucylabs.gatech.edu\/ml4t\/project-8\/"},"modified":"2022-03-16T18:20:17","modified_gmt":"2022-03-16T18:20:17","slug":"project-8","status":"publish","type":"page","link":"https:\/\/lucylabs.gatech.edu\/ml4t\/spring2022\/project-8\/","title":{"rendered":"Project 8"},"content":{"rendered":"<p>[et_pb_section fb_built=&#8221;1&#8243; admin_label=&#8221;Section&#8221; _builder_version=&#8221;4.10.4&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_row admin_label=&#8221;Project Title&#8221; _builder_version=&#8221;4.4.5&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.4.5&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_text _builder_version=&#8221;4.11.1&#8243; header_font=&#8221;|700||on|||||&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h1 style=\"text-align: center;\">Project 8: Strategy Evaluation<\/h1>\n<p>[\/et_pb_text][\/et_pb_column][\/et_pb_row][et_pb_row use_custom_gutter=&#8221;on&#8221; gutter_width=&#8221;1&#8243; admin_label=&#8221;row&#8221; _builder_version=&#8221;4.4.1&#8243; background_size=&#8221;initial&#8221; background_position=&#8221;top_left&#8221; background_repeat=&#8221;repeat&#8221; width=&#8221;100%&#8221; custom_padding=&#8221;0px||0px||false|false&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.4.1&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_divider color=&#8221;#eeeeee&#8221; divider_position=&#8221;center&#8221; divider_weight=&#8221;3px&#8221; _builder_version=&#8221;4.4.1&#8243; width=&#8221;25%&#8221; custom_padding=&#8221;30px||30px||true|false&#8221; global_colors_info=&#8221;{}&#8221;][\/et_pb_divider][et_pb_blurb title=&#8221;Table of Contents&#8221; use_icon=&#8221;on&#8221; font_icon=&#8221;&#x68;||divi||400&#8243; icon_color=&#8221;rgba(0,0,0,0.05)&#8221; icon_placement=&#8221;left&#8221; image_icon_width=&#8221;100px&#8221; content_max_width=&#8221;100%&#8221; _builder_version=&#8221;4.13.0&#8243; header_level=&#8221;h2&#8243; header_font_size=&#8221;26px&#8221; height=&#8221;38px&#8221; icon_font_size=&#8221;100px&#8221; global_colors_info=&#8221;{}&#8221;][\/et_pb_blurb][et_pb_blurb title=&#8221;Overview&#8221; use_icon=&#8221;on&#8221; font_icon=&#8221;&#x24;||divi||400&#8243; icon_color=&#8221;#000000&#8243; image_icon_background_color=&#8221;#FFFFFF&#8221; icon_placement=&#8221;left&#8221; image_icon_width=&#8221;16px&#8221; content_max_width=&#8221;100%&#8221; _builder_version=&#8221;4.14.7&#8243; header_font_size=&#8221;16px&#8221; header_line_height=&#8221;2em&#8221; image_icon_custom_padding=&#8221;8px|8px|8px|8px|false|false&#8221; custom_margin=&#8221;|||118px|false|false&#8221; custom_padding=&#8221;10px|||0px|false|false&#8221; link_option_url=&#8221;#overview&#8221; border_radii_image=&#8221;on|100%|100%|100%|100%&#8221; border_width_all_image=&#8221;2px&#8221; border_color_all_image=&#8221;#000000&#8243; icon_font_size=&#8221;16px&#8221; use_circle=&#8221;on&#8221; use_circle_border=&#8221;on&#8221; circle_border_color=&#8221;#b856c7&#8243; circle_color=&#8221;#FFFFFF&#8221; global_colors_info=&#8221;{}&#8221; font_icon__hover_enabled=&#8221;on|hover&#8221; font_icon__hover=&#8221;&#x22;||divi||400&#8243; custom_padding__hover=&#8221;|||10px|false|false&#8221; custom_padding__hover_enabled=&#8221;on|hover&#8221; image_icon_background_color__sticky_enabled=&#8221;#7EBEC5&#8243; image_icon_background_color__sticky=&#8221;#7EBEC5&#8243;][\/et_pb_blurb][et_pb_blurb title=&#8221;About the Project&#8221; use_icon=&#8221;on&#8221; font_icon=&#8221;&#x24;||divi||400&#8243; icon_color=&#8221;#000000&#8243; image_icon_background_color=&#8221;#FFFFFF&#8221; icon_placement=&#8221;left&#8221; image_icon_width=&#8221;16px&#8221; content_max_width=&#8221;100%&#8221; _builder_version=&#8221;4.14.7&#8243; header_font_size=&#8221;16px&#8221; header_line_height=&#8221;2em&#8221; image_icon_custom_padding=&#8221;8px|8px|8px|8px|false|false&#8221; custom_margin=&#8221;|||118px|false|false&#8221; custom_padding=&#8221;10px|||0px|false|false&#8221; link_option_url=&#8221;#about&#8221; border_radii_image=&#8221;on|100%|100%|100%|100%&#8221; border_width_all_image=&#8221;2px&#8221; border_color_all_image=&#8221;#000000&#8243; icon_font_size=&#8221;16px&#8221; use_circle=&#8221;on&#8221; use_circle_border=&#8221;on&#8221; circle_border_color=&#8221;#b856c7&#8243; circle_color=&#8221;#FFFFFF&#8221; global_colors_info=&#8221;{}&#8221; font_icon__hover_enabled=&#8221;on|hover&#8221; font_icon__hover=&#8221;&#x22;||divi||400&#8243; custom_padding__hover=&#8221;|||10px|false|false&#8221; custom_padding__hover_enabled=&#8221;on|hover&#8221; image_icon_background_color__sticky_enabled=&#8221;#7EBEC5&#8243; image_icon_background_color__sticky=&#8221;#7EBEC5&#8243;][\/et_pb_blurb][et_pb_blurb title=&#8221;Your Implementation&#8221; use_icon=&#8221;on&#8221; font_icon=&#8221;&#x24;||divi||400&#8243; icon_color=&#8221;#000000&#8243; image_icon_background_color=&#8221;#FFFFFF&#8221; icon_placement=&#8221;left&#8221; image_icon_width=&#8221;16px&#8221; content_max_width=&#8221;100%&#8221; _builder_version=&#8221;4.14.7&#8243; header_font_size=&#8221;16px&#8221; header_line_height=&#8221;2em&#8221; image_icon_custom_padding=&#8221;8px|8px|8px|8px|false|false&#8221; custom_margin=&#8221;|||118px|false|false&#8221; custom_padding=&#8221;10px|||0px|false|false&#8221; link_option_url=&#8221;#implementation&#8221; border_radii_image=&#8221;on|100%|100%|100%|100%&#8221; border_width_all_image=&#8221;2px&#8221; border_color_all_image=&#8221;#000000&#8243; icon_font_size=&#8221;16px&#8221; use_circle=&#8221;on&#8221; use_circle_border=&#8221;on&#8221; circle_border_color=&#8221;#b856c7&#8243; circle_color=&#8221;#FFFFFF&#8221; global_colors_info=&#8221;{}&#8221; font_icon__hover_enabled=&#8221;on|hover&#8221; font_icon__hover=&#8221;&#x22;||divi||400&#8243; custom_padding__hover=&#8221;|||10px|false|false&#8221; custom_padding__hover_enabled=&#8221;on|hover&#8221; image_icon_background_color__sticky_enabled=&#8221;#7EBEC5&#8243; image_icon_background_color__sticky=&#8221;#7EBEC5&#8243;][\/et_pb_blurb][et_pb_blurb title=&#8221;Contents of Report&#8221; use_icon=&#8221;on&#8221; font_icon=&#8221;&#x24;||divi||400&#8243; icon_color=&#8221;#000000&#8243; image_icon_background_color=&#8221;#FFFFFF&#8221; icon_placement=&#8221;left&#8221; image_icon_width=&#8221;16px&#8221; content_max_width=&#8221;100%&#8221; _builder_version=&#8221;4.14.7&#8243; header_font_size=&#8221;16px&#8221; header_line_height=&#8221;2em&#8221; image_icon_custom_padding=&#8221;8px|8px|8px|8px|false|false&#8221; custom_margin=&#8221;|||118px|false|false&#8221; custom_padding=&#8221;10px|||0px|false|false&#8221; link_option_url=&#8221;#report&#8221; border_radii_image=&#8221;on|100%|100%|100%|100%&#8221; border_width_all_image=&#8221;2px&#8221; border_color_all_image=&#8221;#000000&#8243; icon_font_size=&#8221;16px&#8221; use_circle=&#8221;on&#8221; use_circle_border=&#8221;on&#8221; circle_border_color=&#8221;#b856c7&#8243; circle_color=&#8221;#FFFFFF&#8221; global_colors_info=&#8221;{}&#8221; font_icon__hover_enabled=&#8221;on|hover&#8221; font_icon__hover=&#8221;&#x22;||divi||400&#8243; custom_padding__hover=&#8221;|||10px|false|false&#8221; custom_padding__hover_enabled=&#8221;on|hover&#8221; image_icon_background_color__sticky_enabled=&#8221;#7EBEC5&#8243; image_icon_background_color__sticky=&#8221;#7EBEC5&#8243;][\/et_pb_blurb][et_pb_blurb title=&#8221;Testing Recommendations&#8221; use_icon=&#8221;on&#8221; font_icon=&#8221;&#x24;||divi||400&#8243; icon_color=&#8221;#000000&#8243; image_icon_background_color=&#8221;#FFFFFF&#8221; icon_placement=&#8221;left&#8221; image_icon_width=&#8221;16px&#8221; content_max_width=&#8221;100%&#8221; _builder_version=&#8221;4.14.7&#8243; header_font_size=&#8221;16px&#8221; header_line_height=&#8221;2em&#8221; image_icon_custom_padding=&#8221;8px|8px|8px|8px|false|false&#8221; custom_margin=&#8221;|||118px|false|false&#8221; custom_padding=&#8221;10px|||0px|false|false&#8221; link_option_url=&#8221;#testing&#8221; border_radii_image=&#8221;on|100%|100%|100%|100%&#8221; border_width_all_image=&#8221;2px&#8221; border_color_all_image=&#8221;#000000&#8243; icon_font_size=&#8221;16px&#8221; use_circle=&#8221;on&#8221; use_circle_border=&#8221;on&#8221; circle_border_color=&#8221;#b856c7&#8243; circle_color=&#8221;#FFFFFF&#8221; global_colors_info=&#8221;{}&#8221; font_icon__hover_enabled=&#8221;on|hover&#8221; font_icon__hover=&#8221;&#x22;||divi||400&#8243; custom_padding__hover=&#8221;|||10px|false|false&#8221; custom_padding__hover_enabled=&#8221;on|hover&#8221; image_icon_background_color__sticky_enabled=&#8221;#7EBEC5&#8243; image_icon_background_color__sticky=&#8221;#7EBEC5&#8243;][\/et_pb_blurb][et_pb_blurb title=&#8221;Submission Requirements&#8221; use_icon=&#8221;on&#8221; font_icon=&#8221;&#x24;||divi||400&#8243; icon_color=&#8221;#000000&#8243; image_icon_background_color=&#8221;#FFFFFF&#8221; icon_placement=&#8221;left&#8221; image_icon_width=&#8221;16px&#8221; content_max_width=&#8221;100%&#8221; _builder_version=&#8221;4.14.7&#8243; header_font_size=&#8221;16px&#8221; header_line_height=&#8221;2em&#8221; image_icon_custom_padding=&#8221;8px|8px|8px|8px|false|false&#8221; custom_margin=&#8221;|||118px|false|false&#8221; custom_padding=&#8221;10px|||0px|false|false&#8221; link_option_url=&#8221;#submission&#8221; border_radii_image=&#8221;on|100%|100%|100%|100%&#8221; border_width_all_image=&#8221;2px&#8221; border_color_all_image=&#8221;#000000&#8243; icon_font_size=&#8221;16px&#8221; use_circle=&#8221;on&#8221; use_circle_border=&#8221;on&#8221; circle_border_color=&#8221;#b856c7&#8243; circle_color=&#8221;#FFFFFF&#8221; global_colors_info=&#8221;{}&#8221; font_icon__hover_enabled=&#8221;on|hover&#8221; font_icon__hover=&#8221;&#x22;||divi||400&#8243; custom_padding__hover=&#8221;|||10px|false|false&#8221; custom_padding__hover_enabled=&#8221;on|hover&#8221; image_icon_background_color__sticky_enabled=&#8221;#7EBEC5&#8243; image_icon_background_color__sticky=&#8221;#7EBEC5&#8243;][\/et_pb_blurb][et_pb_blurb title=&#8221;Grading Information&#8221; use_icon=&#8221;on&#8221; font_icon=&#8221;&#x24;||divi||400&#8243; icon_color=&#8221;#000000&#8243; image_icon_background_color=&#8221;#FFFFFF&#8221; icon_placement=&#8221;left&#8221; image_icon_width=&#8221;16px&#8221; content_max_width=&#8221;100%&#8221; _builder_version=&#8221;4.14.7&#8243; header_font_size=&#8221;16px&#8221; header_line_height=&#8221;2em&#8221; image_icon_custom_padding=&#8221;8px|8px|8px|8px|false|false&#8221; custom_margin=&#8221;|||118px|false|false&#8221; custom_padding=&#8221;10px|||0px|false|false&#8221; link_option_url=&#8221;#grading&#8221; border_radii_image=&#8221;on|100%|100%|100%|100%&#8221; border_width_all_image=&#8221;2px&#8221; border_color_all_image=&#8221;#000000&#8243; icon_font_size=&#8221;16px&#8221; use_circle=&#8221;on&#8221; use_circle_border=&#8221;on&#8221; circle_border_color=&#8221;#b856c7&#8243; circle_color=&#8221;#FFFFFF&#8221; global_colors_info=&#8221;{}&#8221; font_icon__hover_enabled=&#8221;on|hover&#8221; font_icon__hover=&#8221;&#x22;||divi||400&#8243; custom_padding__hover=&#8221;|||10px|false|false&#8221; custom_padding__hover_enabled=&#8221;on|hover&#8221; image_icon_background_color__sticky_enabled=&#8221;#7EBEC5&#8243; image_icon_background_color__sticky=&#8221;#7EBEC5&#8243;][\/et_pb_blurb][et_pb_blurb title=&#8221;Development Guidelines&#8221; use_icon=&#8221;on&#8221; font_icon=&#8221;&#x24;||divi||400&#8243; icon_color=&#8221;#000000&#8243; image_icon_background_color=&#8221;#FFFFFF&#8221; icon_placement=&#8221;left&#8221; image_icon_width=&#8221;16px&#8221; content_max_width=&#8221;100%&#8221; _builder_version=&#8221;4.14.7&#8243; header_font_size=&#8221;16px&#8221; header_line_height=&#8221;2em&#8221; image_icon_custom_padding=&#8221;8px|8px|8px|8px|false|false&#8221; custom_margin=&#8221;|||118px|false|false&#8221; custom_padding=&#8221;10px|||0px|false|false&#8221; link_option_url=&#8221;#guidelines&#8221; border_radii_image=&#8221;on|100%|100%|100%|100%&#8221; border_width_all_image=&#8221;2px&#8221; border_color_all_image=&#8221;#000000&#8243; icon_font_size=&#8221;16px&#8221; use_circle=&#8221;on&#8221; use_circle_border=&#8221;on&#8221; circle_border_color=&#8221;#b856c7&#8243; circle_color=&#8221;#FFFFFF&#8221; global_colors_info=&#8221;{}&#8221; font_icon__hover_enabled=&#8221;on|hover&#8221; font_icon__hover=&#8221;&#x22;||divi||400&#8243; custom_padding__hover=&#8221;|||10px|false|false&#8221; custom_padding__hover_enabled=&#8221;on|hover&#8221; image_icon_background_color__sticky_enabled=&#8221;#7EBEC5&#8243; image_icon_background_color__sticky=&#8221;#7EBEC5&#8243;][\/et_pb_blurb][et_pb_divider color=&#8221;#eeeeee&#8221; divider_position=&#8221;center&#8221; divider_weight=&#8221;3px&#8221; _builder_version=&#8221;4.4.1&#8243; width=&#8221;25%&#8221; custom_padding=&#8221;30px||30px||true|false&#8221; global_colors_info=&#8221;{}&#8221;][\/et_pb_divider][\/et_pb_column][\/et_pb_row][et_pb_row admin_label=&#8221;Revisions&#8221; _builder_version=&#8221;4.4.5&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.4.5&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_text admin_label=&#8221;Text&#8221; _builder_version=&#8221;4.14.9&#8243; hover_enabled=&#8221;0&#8243; global_colors_info=&#8221;{}&#8221; sticky_enabled=&#8221;0&#8243;]<\/p>\n<h2>Revisions<\/h2>\n<p><span>This assignment is subject to change up until 3 weeks prior to the due date. We do not anticipate changes; any changes will be logged in this section.<\/span><\/p>\n<p><span>01 Feb 2022<\/span><\/p>\n<ul>\n<li><span>Revisions to sections 2.1, 2.2, 3.1, 3.2, 3.3, 3.3.1, 3.3.2, 3.3.3, 3.3.4, 3.3.5, 3.5, 4, 6, and 7.1.2<\/span><span><\/span><\/li>\n<\/ul>\n<p><span>16 Feb 2022<\/span><\/p>\n<ul>\n<li><span>Revision to section 7.1.1 changing chart line color from green to purple.<\/span><\/li>\n<\/ul>\n<p>[\/et_pb_text][\/et_pb_column][\/et_pb_row][et_pb_row admin_label=&#8221;1 Overview&#8221; module_id=&#8221;overview&#8221; _builder_version=&#8221;4.14.7&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.4.5&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_text _builder_version=&#8221;4.14.8&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h2>1 Overview<\/h2>\n<p><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun SCXW33764492 BCX4\"><span class=\"NormalTextRun SCXW33764492 BCX4\">In this assignment, you <\/span><span class=\"NormalTextRun SCXW33764492 BCX4\">implement <\/span><span class=\"NormalTextRun SCXW33764492 BCX4\">two strategies and compare their performance. One strategy is a manual strategy, where you will develop the trading rules. The other is a strategy learner, which will develop the trading rules using artificial intelligence. <\/span><span class=\"NormalTextRun SCXW33764492 BCX4\">You will submit the code for the project in <\/span><span class=\"NormalTextRun SpellingErrorV2 SCXW33764492 BCX4\">Gradescope<\/span><span class=\"NormalTextRun SCXW33764492 BCX4\"> SUBMISSION. <\/span><span class=\"NormalTextRun SCXW33764492 BCX4\">You will also submit a report to Canvas<\/span><span class=\"NormalTextRun SCXW33764492 BCX4\">.<\/span><\/span><span class=\"EOP SCXW33764492 BCX4\" data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p>[\/et_pb_text][et_pb_text admin_label=&#8221;1.1 Learning Objectives&#8221; _builder_version=&#8221;4.11.1&#8243; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h3>1.1 Learning Objectives<\/h3>\n<p><span data-contrast=\"auto\">This project builds on the work of several earlier projects. The specific learning objectives for this assignment are focused on the following areas:<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><b><span data-contrast=\"auto\">Trading Solution<\/span><\/b><span data-contrast=\"auto\">: This project represents the capstone project for the course. This\u00a0synthesizes\u00a0the\u00a0investing and machine learning concepts; and integrates many of the technical components developed in prior projects.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"2\" data-aria-level=\"1\"><b><span data-contrast=\"auto\">Trading Policy Comparison<\/span><\/b><span data-contrast=\"auto\">:\u00a0Provides an opportunity to evaluate the performance of a manual strategy with that of the AI-learner\u00a0to better understand its behavior and how it works relative to human-developed strategies.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><b><span data-contrast=\"auto\">Foundation for Continued Learning<\/span><\/b><span data-contrast=\"auto\">: The knowledge learned and the\u00a0components throughout the course can serve as a foundation for continued learning and research in trading, machine learning, reinforcement learning, and\/or\u00a0investing.\u00a0<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<\/ul>\n<p>[\/et_pb_text][\/et_pb_column][\/et_pb_row][et_pb_row admin_label=&#8221;2 About The Project&#8221; module_id=&#8221;about&#8221; _builder_version=&#8221;4.14.7&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.4.5&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_text _builder_version=&#8221;4.11.1&#8243; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h2>2 About the Project<\/h2>\n<p><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun SCXW47210180 BCX4\"><span class=\"NormalTextRun SCXW47210180 BCX4\">I<\/span><span class=\"NormalTextRun SCXW47210180 BCX4\">n this project, you will <\/span><span class=\"NormalTextRun SCXW47210180 BCX4\">select a minimum of three and a maximum of all five indicators from Project 6 and use the same indicators in a manual and strategy learner.<\/span><\/span><span class=\"EOP SCXW47210180 BCX4\" data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p>[\/et_pb_text][et_pb_text admin_label=&#8221;2.1 Indicator Selection&#8221; _builder_version=&#8221;4.14.7&#8243; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h3>2.1 Indicator Selection<\/h3>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">Choose at least 3 indicators. <span class=\"TrackedChange SCXW254596455 BCX4\"><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun Highlight SCXW254596455 BCX4\"><span class=\"NormalTextRun  SCXW254596455 BCX4\">We recommend that these be the same ones researched and reported in P6, however,\u00a0<\/span><\/span><\/span><span class=\"TrackedChange SCXW254596455 BCX4\"><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun Highlight SCXW254596455 BCX4\"><span class=\"NormalTextRun  SCXW254596455 BCX4\">if you are finding you cannot achieve the results you would like, you may use one new indicator<\/span><\/span><\/span><span class=\"TrackedChange SCXW254596455 BCX4\"><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun Highlight SCXW254596455 BCX4\"><span class=\"NormalTextRun  SCXW254596455 BCX4\">.<\/span><\/span><\/span><span class=\"TrackedChange SCXW254596455 BCX4\"><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun Highlight SCXW254596455 BCX4\"><span class=\"NormalTextRun  SCXW254596455 BCX4\">\u00a0 <\/span><\/span><\/span><span class=\"TrackedChange SCXW254596455 BCX4\"><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun Highlight SCXW254596455 BCX4\"><span class=\"NormalTextRun  SCXW254596455 BCX4\">Note that you can choose only 2 indicators from {SMA, <\/span><\/span><\/span><span class=\"TrackedChange SCXW254596455 BCX4\"><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun Highlight SCXW254596455 BCX4\"><span class=\"NormalTextRun SpellingErrorV2  SCXW254596455 BCX4\">Bollinger Bands<\/span><\/span><\/span><span class=\"TrackedChange SCXW254596455 BCX4\"><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun Highlight SCXW254596455 BCX4\"><span class=\"NormalTextRun  SCXW254596455 BCX4\">, RSI}, just as in P6.\u00a0 <\/span><\/span><\/span><span class=\"TrackedChange SCXW254596455 BCX4\"><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun Highlight SCXW254596455 BCX4\"><span class=\"NormalTextRun  SCXW254596455 BCX4\">Hint: If you\u2019re finding poor results using the suggested indicators, be sure to verify your learner<\/span><\/span><\/span><span class=\"TrackChangeTextDeletion TrackedChange  SCXW254596455 BCX4\"><span class=\"TrackedChange SCXW254596455 BCX4\"><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun Highlight SCXW254596455 BCX4\"><span class=\"NormalTextRun  SCXW254596455 BCX4\">\u2019s<\/span><\/span><\/span><\/span><span class=\"TrackedChange SCXW254596455 BCX4\"><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun Highlight SCXW254596455 BCX4\"><span class=\"NormalTextRun  SCXW254596455 BCX4\"> implementation<\/span><\/span><\/span><span class=\"TrackChangeTextInsertion TrackedChange  SCXW254596455 BCX4\"><span class=\"TrackedChange SCXW254596455 BCX4\"><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun Highlight SCXW254596455 BCX4\"><span class=\"NormalTextRun  SCXW254596455 BCX4\">s<\/span><\/span><\/span><\/span><span class=\"TrackedChange SCXW254596455 BCX4\"><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun Highlight SCXW254596455 BCX4\"><span class=\"NormalTextRun  SCXW254596455 BCX4\">.<\/span><\/span><\/span><\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"2\" data-aria-level=\"1\"><span data-contrast=\"auto\">You can only use the indicators that were reported on P6. If you created an EMA function as part of the MACD indicator, you may only use MACD as the indicator and not EMA. You may use EMA if you reported EMA as an indicator.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><span data-contrast=\"auto\">Indicators must return a single results vector. As an example, the MACD indicator can only return one vector. This means it must return a custom scalar array that you develop that provides the information you need, the existing Signal line as an array, or the MACD line as an array.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"4\" data-aria-level=\"1\"><span data-contrast=\"auto\">Indicators can only be used once<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<\/ul>\n<p>[\/et_pb_text][et_pb_text admin_label=&#8221;2.2 Implement a Manual Strategy&#8221; _builder_version=&#8221;4.14.7&#8243; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h3>2.2 Overall Approach<\/h3>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"4\" data-aria-level=\"1\"><span>Build a <\/span><span><b>Manual Strategy<\/b><\/span><span>, implemented as a class, that combines a minimum of 3 out of the 5 indicators from Project 6.<\/span><span data-contrast=\"auto\">\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"4\" data-aria-level=\"1\"><span>Build a <\/span><span><b>Strategy Learner<\/b><\/span><span>, implemented as a class, based on one of the learners described above that uses the same 3+ indicators as used in the manual strategy.<\/span><span data-contrast=\"auto\">\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"4\" data-aria-level=\"1\"><span>Test\/debug the <\/span><span><b>Manual Strategy<\/b><\/span><span> and <\/span><span><b>Strategy Learner<\/b><\/span><span> on specific symbol\/time period problems.<\/span><span data-contrast=\"auto\">\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"4\" data-aria-level=\"1\"><span>Conduct experiments.<\/span><span data-contrast=\"auto\">\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"4\" data-aria-level=\"1\"><span>Write<\/span><span> a report describing your <\/span><span><b>Manual Strategy<\/b><\/span><span>, <\/span><span><b>Strategy Learner,<\/b><\/span><span> and <\/span><span><b>Experiments<\/b><\/span><span>.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<\/ul>\n<p>[\/et_pb_text][et_pb_text admin_label=&#8221;2.3 Implement a Strategy Learner&#8221; _builder_version=&#8221;4.14.4&#8243; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h3>2.3 Implement a Strategy Learner<\/h3>\n<p><span data-contrast=\"auto\">You must draw on the learners you have created so far in the course. Your choices are:<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<ol>\n<li data-leveltext=\"%1.\" data-font=\"\" data-listid=\"1\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><b><span data-contrast=\"auto\">Classification-based learner<\/span><\/b><span data-contrast=\"auto\">: Create a strategy using your Random Forest learner. Suggestions if you follow this approach:<a href=\"https:\/\/lucylabs.gatech.edu\/ml4t\/classification-trader-hints\/\" target=\"_blank\" rel=\"noopener\"> Classification_Trader_Hints<\/a>. Important note, if you choose this method, you must set the leaf_size for your learner to 5 or greater. This is to avoid degenerate overfitting in-sample. For classification, you must convert your regression learner to use mode rather than mean (RTLearner, BagLearner).\u00a0<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><b><span data-contrast=\"auto\"><\/span><\/b><b><span data-contrast=\"auto\"><\/span><\/b><\/li>\n<li data-leveltext=\"%1.\" data-font=\"\" data-listid=\"1\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><b><span data-contrast=\"auto\">Reinforcement-based learner<\/span><\/b><span data-contrast=\"auto\">: Create a Q-learning-based strategy using your Q-Learner. Read the <a href=\"https:\/\/lucylabs.gatech.edu\/ml4t\/classification-trader-hints\/\" target=\"_blank\" rel=\"noopener\">Classification_Trader_Hints<\/a> first, because many of the ideas there are relevant for the Q trader, then see <a href=\"https:\/\/lucylabs.gatech.edu\/ml4t\/q-trader-hints\/\" target=\"_blank\" rel=\"noopener\">Q_Trader_Hints<\/a>. For Q-learning, use the same binning cuts for in-sample and out-of-sample.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"%1.\" data-font=\"\" data-listid=\"1\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><b><span data-contrast=\"auto\">Optimization-based learner<\/span><\/b><span data-contrast=\"auto\">: Create a scan-based strategy using an optimizer. Read the <a href=\"https:\/\/lucylabs.gatech.edu\/ml4t\/classification-trader-hints\/\" target=\"_blank\" rel=\"noopener\">Classification_Trader_Hints<\/a> first, because many of the ideas there are relevant for the Opto trader, then see <a href=\"https:\/\/lucylabs.gatech.edu\/ml4t\/opto-trader-hints\/\" target=\"_blank\" rel=\"noopener\">Opto_Trader_Hints<\/a><\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<\/ol>\n<p><span data-contrast=\"auto\">Regardless of your choice above, your learner should work in the following way:<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">In the training phase (e.g., add_evidence()) your learner will be provided with a stock symbol and a time period. It should use this data to learn a strategy. For instance, a classification-based learner will use this data to make predictions about future price changes.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"2\" data-aria-level=\"1\"><span data-contrast=\"auto\">In the testing phase (e.g., testPolicy()) your learner will be provided a symbol and a date range. All learning should be turned OFF during this phase.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"2\" data-aria-level=\"1\"><span data-contrast=\"auto\">You should use the same indicators as you use in the Manual Strategy in Strategy Learner so we can compare your results. You may optimize your indicators for time (vectorization).<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<\/ul>\n<ul><\/ul>\n<p><span data-contrast=\"auto\">Your learner should return a trades DataFrame like it did in the last project. Here are some important requirements: Your testPolicy() method should be much faster than your add_evidence() method. The timeout requirements (see rubric) will be set accordingly. Multiple calls to your testPolicy() method should return exactly the same result.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p>[\/et_pb_text][et_pb_text admin_label=&#8221;2.4 Overall Considerations&#8221; _builder_version=&#8221;4.11.1&#8243; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h3><span>2.4 Overall Considerations<\/span><\/h3>\n<p><span data-contrast=\"auto\">Overall, your tasks for this project include:<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"2\" data-aria-level=\"1\"><span data-contrast=\"auto\">Build a <\/span><b><span data-contrast=\"auto\">Manual Strategy<\/span><\/b><span data-contrast=\"auto\">, implemented as a class, that combines a minimum of 3 out of the 5 indicators from Project 6.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"2\" data-aria-level=\"1\"><span data-contrast=\"auto\">Build a <\/span><b><span data-contrast=\"auto\">Strategy Learner<\/span><\/b><span data-contrast=\"auto\">, implemented as a class, based on one of the learners described above that uses the same 3+ indicators as used in the manual strategy.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"2\" data-aria-level=\"1\"><span data-contrast=\"auto\">Test\/debug the <\/span><b><span data-contrast=\"auto\">Manual Strategy<\/span><\/b><span data-contrast=\"auto\"> and <\/span><b><span data-contrast=\"auto\">Strategy Learner<\/span><\/b><span data-contrast=\"auto\"> on specific symbol\/time period problems.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"2\" data-aria-level=\"1\"><span data-contrast=\"auto\">Conduct experiments.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<\/ul>\n<p><span data-contrast=\"auto\">Write a report describing your <\/span><b><span data-contrast=\"auto\">Manual Strategy<\/span><\/b><span data-contrast=\"auto\">, <\/span><b><span data-contrast=\"auto\">Strategy Learner,<\/span><\/b><span data-contrast=\"auto\"> and <\/span><b><span data-contrast=\"auto\">Experiments<\/span><\/b><span data-contrast=\"auto\">.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p>[\/et_pb_text][\/et_pb_column][\/et_pb_row][et_pb_row admin_label=&#8221;3 Your Implementation&#8221; module_id=&#8221;implementation&#8221; _builder_version=&#8221;4.14.7&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.4.5&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_text _builder_version=&#8221;4.11.1&#8243; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h2>3 Your Implementation<\/h2>\n<p><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun SCXW246465709 BCX4\"><span class=\"NormalTextRun SCXW246465709 BCX4\">Before the deadline, make sure to pre-validate your submission using <\/span><span class=\"NormalTextRun SpellingErrorV2 SCXW246465709 BCX4\">Gradescope<\/span><span class=\"NormalTextRun SCXW246465709 BCX4\"> TESTING. Once you are satisfied with the results in testing, submit the code to <\/span><span class=\"NormalTextRun SpellingErrorV2 SCXW246465709 BCX4\">Gradescope<\/span><span class=\"NormalTextRun SCXW246465709 BCX4\"> SUBMISSION. <\/span><\/span><strong><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun SCXW246465709 BCX4\"><span class=\"NormalTextRun SCXW246465709 BCX4\">Only code submitted to <\/span><span class=\"NormalTextRun SpellingErrorV2 SCXW246465709 BCX4\">Gradescope<\/span><span class=\"NormalTextRun SCXW246465709 BCX4\"> SUBMISSION will be graded<\/span><span class=\"NormalTextRun SCXW246465709 BCX4\">.<\/span><span class=\"NormalTextRun SCXW246465709 BCX4\"> If you submit your code to <\/span><span class=\"NormalTextRun SpellingErrorV2 SCXW246465709 BCX4\">Gradescope<\/span><span class=\"NormalTextRun SCXW246465709 BCX4\"> TESTING and have not also <\/span><span class=\"NormalTextRun SCXW246465709 BCX4\">submitted your code to <\/span><span class=\"NormalTextRun SpellingErrorV2 SCXW246465709 BCX4\">Gradescope<\/span><span class=\"NormalTextRun SCXW246465709 BCX4\"> <\/span><span class=\"NormalTextRun SCXW246465709 BCX4\">SUBMISSION, you will receive a zero (0).<\/span><\/span><span class=\"EOP SCXW246465709 BCX4\" data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/strong><\/p>\n<p>[\/et_pb_text][et_pb_text admin_label=&#8221;3.1 Getting Started&#8221; _builder_version=&#8221;4.14.4&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h3>3.1 Getting Started<\/h3>\n<p><span data-contrast=\"auto\">To make it easier to get started on the project and focus on the concepts involved, you will be given a starter framework. This framework assumes you have already set up the <\/span><a href=\"https:\/\/lucylabs.gatech.edu\/ml4t\/spring2022\/local-environment\/\" target=\"_blank\" rel=\"noopener\"><span data-contrast=\"none\">local environment<\/span><\/a><span data-contrast=\"auto\"> and <\/span><a href=\"https:\/\/lucylabs.gatech.edu\/ml4t\/spring2022\/software-setup\/\" target=\"_blank\" rel=\"noopener\"><span data-contrast=\"none\">ML4T Software<\/span><\/a><span data-contrast=\"auto\">. The framework for Project 8 can be obtained from: <a href=\"https:\/\/www.dropbox.com\/s\/d8yrz4ql1mm97a1\/strategy_evaluation_2022Spr.zip?dl=1\" target=\"_blank\" rel=\"noopener\">Strategy_Evaluation_2022Spr.zip<\/a>.\u202f<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">Extract its contents into the base directory (e.g., ML4T_2021Summer). This will add a new folder called \u201cstrategy_evaluation\u201d to the course directory structure:\u202f\u202f<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p>[\/et_pb_text][et_pb_image src=&#8221;https:\/\/lucylabs.gatech.edu\/ml4t\/wp-content\/uploads\/2021\/10\/Screen-Shot-2021-10-03-at-1.16.22-PM.png&#8221; title_text=&#8221;Screen Shot 2021-10-03 at 1.16.22 PM&#8221; _builder_version=&#8221;4.11.1&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][\/et_pb_image][et_pb_text admin_label=&#8221;3.1 Cont&#8221; _builder_version=&#8221;4.14.8&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<p><span>The framework for Project 8 can be obtained in the <\/span><span>strategy_evaluation<\/span><span> folder alone. Within the <\/span><span>strategy_evaluation\u00a0<\/span><span>is the grading script<\/span><span>:<\/span><span data-contrast=\"auto\">\u00a0\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"2\" data-aria-level=\"1\"><span>grade_strategy_learner.py<\/span>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"2\" data-aria-level=\"1\"><span>Script to test your implementation.\u00a0 This matches the publicly available tests for this project.\u00a0 This file does not need to be turned in and allows you to test locally.<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p><span>Additional files will also need <\/span><span>created<\/span><span> and<\/span><span>\u00a0<\/span><span>added to the project directory.\u00a0 These files are from previous projects or will need to be created<\/span><span>:<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span>testproject.py <\/span><span>\u00a0<\/span>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span>Code initializing\/running all necessary files for the report. <\/span><span><i>NOTE: You will have to create the contents of this file yourself.<\/i><\/span><span><i>\u00a0<\/i><\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<\/ul>\n<\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"2\" data-aria-level=\"1\"><span>ManualStrategy.py <\/span><span>\u00a0<\/span>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"2\" data-aria-level=\"1\"><span>Code implementing a <\/span><span>ManualStrategy<\/span><span> object (your Manual Strategy) in the <\/span><span>strategy_evaluation<\/span><span>\/ directory. It should implement <\/span><span>testPolicy<\/span><span>() which returns a trades data frame (see below). The main part of this code should call <\/span><span>marketsimcode<\/span><span> as necessary to generate the plots used in the report. <\/span><span><i>NOTE: You will have to create this file yourself.<\/i><\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<\/ul>\n<\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><span>Place your existing Q-Learner<\/span><span>,<\/span> <span>RTLearner,<\/span><span> and <\/span><span>BagLearner<\/span><span> (<\/span><span>and<\/span> <span>DTLearner<\/span><span> as well if inheritance is involved)<\/span><span>,<\/span><span> or <\/span><span>OptimizationLearner<\/span><span> into the <\/span><span>strategy_evaluation<\/span><span>\/ directory.<\/span><span data-contrast=\"auto\">\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"4\" data-aria-level=\"1\"><span>Place your existing indicators.<\/span><span>py<\/span><span> into the <\/span><span>strategy_evaluation<\/span><span>\/ directory <\/span>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"4\" data-aria-level=\"1\"><span><i>NOTE: You can make changes to the indicators to properly work with both Manual Strategy and Strategy Learner but both strategies must use the same indicator code<\/i><\/span><span>. <\/span><span><i>If you choose to create new indicators, add them to indicators.py.<\/i><\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<\/ul>\n<\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"5\" data-aria-level=\"1\"><span>Place your existing marketsimcode.<\/span><span>py<\/span><span> into the <\/span><span>strategy_evaluation<\/span><span>\/ directory <\/span>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"5\" data-aria-level=\"1\"><span>(optional: if needed<\/span><span>; note that this is marketsimcode.py and not marketsim.py<\/span><span>).<\/span><span data-contrast=\"auto\">\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<\/ul>\n<\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"5\" data-aria-level=\"1\"><span>StrategyLearner.py <\/span><span>\u00a0<\/span>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"5\" data-aria-level=\"1\"><span>Code implementing a <\/span><span>StrategyLearner<\/span><span> object (your ML strategy) in the <\/span><span>strategy_evaluation<\/span><span> directory. <\/span><span><i>NOTE: You will have to create this file yourself.<\/i><\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<\/ul>\n<\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"5\" data-aria-level=\"1\"><span>experiment1.<\/span><span>py<\/span><span> and experiment2.py<\/span><span data-contrast=\"auto\">\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"5\" data-aria-level=\"1\"><span data-contrast=\"auto\">Code conducting the experiments outlined below. <\/span><i><span data-contrast=\"auto\">NOTE: You will have to create these files yourself.\u00a0<\/span><\/i><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p><span data-contrast=\"auto\">See \u201cwhat to turn in\u201d below for a list of files that should be submitted.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p>[\/et_pb_text][et_pb_text admin_label=&#8221;3.2 Data Details, Dates &#038; Rules&#8221; _builder_version=&#8221;4.14.7&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h3>3.2 Data Details, Dates &amp; Rules<\/h3>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">Use only the data provided for this course. You are not allowed to import external data.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"2\" data-aria-level=\"1\"><span data-contrast=\"auto\">For your report, trade only the symbol JPM. This will enable us to compare results more easily. We will test your <\/span><b><span data-contrast=\"auto\">Strategy Learner<\/span><\/b><span data-contrast=\"auto\"> with other symbols as well.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><span data-contrast=\"auto\">You may use data from other symbols (such as SPY) to inform both your <\/span><b><span data-contrast=\"auto\">Manual Strategy<\/span><\/b><span data-contrast=\"auto\"> and <\/span><b><span data-contrast=\"auto\">Strategy Learner<\/span><\/b><span data-contrast=\"auto\">.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"4\" data-aria-level=\"1\"><span data-contrast=\"auto\">The in-sample period is January 1, 2008 to December 31, 2009.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"5\" data-aria-level=\"1\"><span data-contrast=\"auto\">The out-of-sample\/testing period is January 1, 2010 to December 31, 2011.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"5\" data-aria-level=\"1\"><span data-contrast=\"auto\">Starting cash is $100,000.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"5\" data-aria-level=\"1\"><span data-contrast=\"auto\">Allowable positions are: 1000 shares long, 1000 shares short, 0 shares.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"5\" data-aria-level=\"1\"><span data-contrast=\"auto\">Only buy\/sell actions are allowed. Stops, trailing stops, stop-loss, or any other trading setup is not allowed.\u00a0<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"5\" data-aria-level=\"1\"><span data-contrast=\"auto\">Benchmark: The performance of a portfolio starting with $100,000 cash, investing in 1000 shares of the symbol in use on the first trading day,\u00a0 and holding that position. Include transaction costs.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"5\" data-aria-level=\"1\"><span data-contrast=\"auto\">There is no limit on leverage. <span class=\"TrackChangeTextInsertion TrackedChange  BCX4  SCXW124763344\"><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun  BCX4 SCXW124763344\"><span class=\"NormalTextRun  BCX4  SCXW124763344\">This means that you do not need to confirm that you have the capital to make your trade.\u00a0 All trades can be ex<\/span><\/span><\/span><span class=\"TrackChangeTextInsertion TrackedChange  BCX4  SCXW124763344\"><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun  BCX4 SCXW124763344\"><span class=\"NormalTextRun  BCX4  SCXW124763344\">ecuted without validating available cash in your portfolio.<\/span><\/span><\/span><\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"5\" data-aria-level=\"1\"><span data-contrast=\"auto\">Transaction costs:<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"5\" data-aria-level=\"1\"><span data-contrast=\"auto\">ManualStrategy and StrategyLearner: Commission: $9.95, Impact: 0.005 (unless stated otherwise in an experiment).<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"5\" data-aria-level=\"1\"><span data-contrast=\"auto\">Auto-Grader Commission will always be $0.00, Impact may vary, and will be passed in as a parameter to the learner<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>[\/et_pb_text][et_pb_text admin_label=&#8221;3.3 Tasks &#038; Requirementsts&#8221; _builder_version=&#8221;4.14.7&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h3>3.3 Tasks &amp; Requirementsts<\/h3>\n<p><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun SCXW121135595 BCX4\"><span class=\"NormalTextRun SCXW121135595 BCX4\">You will implement a\u00a0<\/span><span class=\"NormalTextRun SCXW121135595 BCX4\">manual rule-based trader, the strategy learner<span class=\"TrackChangeTextInsertion TrackedChange   BCX4 TrackChangeHoverSelectColorRed SCXW129082203\"><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun  BCX4 SCXW129082203\"><span class=\"NormalTextRun   BCX4 TrackChangeHoverSelectHighlightRed SCXW129082203\">, and conduct experiments<\/span><\/span><\/span><span class=\"TrackChangeTextDeletion TrackedChange   BCX4 TrackChangeHoverSelectColorRed SCXW129082203\"><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun  BCX4 SCXW129082203\"><span class=\"NormalTextRun   BCX4 TrackChangeHoverSelectHighlightRed SCXW129082203\">.<\/span><\/span><\/span><\/span><\/span><\/p>\n<p>[\/et_pb_text][et_pb_text admin_label=&#8221;3.3.1 Implement Manual Rule-Based Trader&#8221; _builder_version=&#8221;4.14.7&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h4>3.3.1 Implement Manual Rule-Based Trader<\/h4>\n<p><b><span data-contrast=\"auto\">Not included in the template. You will have to create this code file.<\/span><\/b><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">Create ManualStrategy.py and implement a set of rules using at a minimum of 3 indicators you created in Project 6 (NOTE: You can make changes to the indicators to properly work with both <\/span><b><span data-contrast=\"auto\">Manual Strategy<\/span><\/b><span data-contrast=\"auto\"> and <\/span><b><span data-contrast=\"auto\">Strategy Learner<\/span><\/b><span data-contrast=\"auto\"> but both strategies must use the same indicator code). Devise some simple logic using your indicators to enter and exit positions in the stock. All indicators must be used in some way to determine a buy\/sell signal.\u00a0 You cannot use a single indicator for all signals.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">A recommended approach is to create a single logical expression that yields a -1, 0, or 1, corresponding to a \u201cshort,\u201d \u201cout\u201d or \u201clong\u201d position. Example usage is signal: If you are out of the stock, then a 1 would signal a BUY 1000 order. If you are long, a -1 would signal a SELL 2000 order. You don\u2019t have to follow this advice though, so long as you follow the trading rules outlined above.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">For the report we want a written description, not code, however, it is OK to augment your written description with a pseudocode figure.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">You should tweak your rules as best you can to get the best performance possible during the in-sample period (do not peek at out-of-sample performance) and should include more than one trade.\u00a0 Use your rule-based strategy to generate a trades DataFrame\u00a0over the in-sample period.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">We expect that your rule-based strategy should outperform the benchmark over the in-sample period.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">Benchmark: The performance of a portfolio starting with $100,000 cash, investing in 1000 shares of JPM on the first trading day, and holding that position.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span>Your <\/span><span>ManualStrategy<\/span><span> will also need to create two charts.\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n<p><span>For the in-sample period:\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span><b>Benchma<\/b><\/span><span><b>rk<\/b><\/span><span> (starting with $100,000 cash, investing in 1000 shares of JPM, and holding that position): <\/span><span><b>Purple line<\/b><\/span><span>\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span>Performance of <\/span><span><b>Manual Strategy: Red line<\/b><\/span><span>\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span>Both should be <\/span><span><b>normalized to 1.0<\/b><\/span><span> at the start.\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span>Vertical <\/span><span><b>blue lines<\/b><\/span><span> indicating LONG entry points.\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span>Vertical <\/span><span><b>black lines<\/b><\/span><span> indicating SHORT entry points.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<\/ul>\n<p><span>For the out-of-sample period:<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span>Benchmark (starting with $100,000 cash, investing in 1000 shares of JPM, and holding that position): <\/span><span><b>Purple line<\/b><\/span><span>\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"2\" data-aria-level=\"1\"><span>Performance of <\/span><span><b>Manual Strategy: Red line<\/b><\/span><span>\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><span>Both should be <\/span><span><b>normalized to 1.0<\/b><\/span><span> at the start.\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"4\" data-aria-level=\"1\"><span>Vertical <\/span><span><b>blue lines<\/b><\/span><span> indicating LONG entry points.\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"5\" data-aria-level=\"1\"><span>Vertical <\/span><span><b>black lines<\/b><\/span><span> indicating SHORT entry points.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<\/ul>\n<p><span><i>Note: The vertical lines are short and long <\/i><\/span><span><b><i>entry <\/i><\/b><\/span><span><i>points, not buy and sell indicators.<\/i><\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n<p><span>Create a table that summarizes the performance of the stock, and the Manual Strategy for both in-sample and out-of-sample periods.<\/span><span>\u00a0 At a minimum, the table must include:\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span>Cumulative return of the benchmark and Manual Strategy portfolio\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"2\" data-aria-level=\"1\"><span>STDEV of daily returns of the benchmark and Manual Strategy portfolio\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"2\" data-aria-level=\"1\"><span>Mean of daily returns of the benchmark and Manual Strategy portfolio<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<\/ul>\n<ul><\/ul>\n<p><span data-contrast=\"auto\">Your ManualStrategy should implement the following API:<\/span><\/p>\n<p>[\/et_pb_text][et_pb_code _builder_version=&#8221;4.11.1&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;]<script src=\"https:\/\/gist.github.com\/CS7646-ML4T\/9b44f62d9feb0f1856984692d725b52b.js\"><\/script>[\/et_pb_code][et_pb_text admin_label=&#8221;3.3.2 Implement Strategy Learner&#8221; _builder_version=&#8221;4.14.7&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h4><span>3.3.2 Implement Strategy Learner<\/span><\/h4>\n<p><span data-contrast=\"auto\">For this part of the project, you should develop a learner that can learn a trading policy using your learner and the same indicators used in the Manual Strategy (<\/span><i><span data-contrast=\"auto\">NOTE: You can make changes to the indicators to properly work with both Manual Strategy and Strategy Learner but both strategies must use the same indicator code<\/span><\/i><span data-contrast=\"auto\">).\u00a0<\/span><span>You must draw on the learners you have created so far in the course. Your choices are:<\/span><span data-contrast=\"auto\">\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n<ol>\n<li data-leveltext=\"%1.\" data-font=\"Calibri\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span><b>Classification-based learner<\/b><\/span><span>: Create a strategy using your Random Forest learner. Suggestions if you follow this approach:<\/span><a href=\"https:\/\/lucylabs.gatech.edu\/ml4t\/classification-trader-hints\/\"><span> Classification_Trader_Hints<\/span><\/a><span>. Important note, if you choose this method, you must set the <\/span><span>leaf_size<\/span><span> for your learner to 5 or greater. This is to avoid degenerate overfitting in-sample. For classification, you must convert your regression learner to use mode rather than mean in <\/span><span>both the<\/span> <span>RTLearner<\/span><span> and <\/span><span>BagLearner<\/span><span>.<\/span><\/li>\n<li data-leveltext=\"%1.\" data-font=\"Calibri\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span><b>Reinforcement-based learner<\/b><\/span><span>: Create a Q-learning-based strategy using your Q-Learner. Read the <\/span><a href=\"https:\/\/lucylabs.gatech.edu\/ml4t\/classification-trader-hints\/\"><span>Classification_Trader_Hints<\/span><\/a><span> first, because many of the ideas there are relevant for the Q trader, then see <\/span><a href=\"https:\/\/lucylabs.gatech.edu\/ml4t\/q-trader-hints\/\"><span>Q_Trader_Hints<\/span><\/a><span>. For Q-learning, use the same binning cuts for in-sample and out-of-sample.<\/span><span data-contrast=\"auto\">\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"%1.\" data-font=\"Calibri\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span><b>Optimization-based learner<\/b><\/span><span>: Create a scan-based strategy using an optimizer. Read the <\/span><a href=\"https:\/\/lucylabs.gatech.edu\/ml4t\/classification-trader-hints\/\"><span>Classification_Trader_Hints<\/span><\/a><span> first, because many of the ideas there are relevant for the <\/span><span>Opto<\/span><span> trader, then see <\/span><a href=\"https:\/\/lucylabs.gatech.edu\/ml4t\/opto-trader-hints\/\"><span>Opto_Trader_Hints<\/span><\/a><span data-contrast=\"auto\">\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<\/ol>\n<p><span>Regardless of your choice above, your learner should work in the following way:<\/span><span data-contrast=\"auto\">\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span>In the training phase (e.g., <\/span><span>add_evidence<\/span><span>()) your learner will be provided with a stock symbol and a time period. It should use this data to learn a strategy. For instance, a classification-based learner will use this data to make predictions about future price changes.<\/span><span data-contrast=\"auto\">\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"2\" data-aria-level=\"1\"><span>In the testing phase (e.g., <\/span><span>testPolicy<\/span><span>()) your learner will be <\/span><span>provided<\/span><span> a symbol and a date range. All learning should be turned OFF during this phase.<\/span><span data-contrast=\"auto\">\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><span>You should use the same indicators as you use in the Manual Strategy in Strategy Learner so we can compare your results. You may optimize your indicators for time (vectorization).<\/span><span data-contrast=\"auto\">\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<\/ul>\n<p><span>Your learner should return a trades <\/span><span>DataFrame<\/span><span> like it did in the last project. Here are some important requirements: Your <\/span><span>testPolicy<\/span><span>() method should be much faster than <\/span><span>your<\/span> <span>add_evidence<\/span><span>() method. The timeout requirements (see rubric) will be set accordingly. Multiple calls to your <\/span><span>testPolicy<\/span><span>() method should return <\/span><span>exactly the same<\/span><span> result.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n<p><span>You should be able to use your Q-Learner or <\/span><span>RTLearner<\/span><span> from the earlier project directly. If you want to use the optimization approach, you will need to create <\/span><span>new<\/span><span> code for that. You will need to write code in StrategyLearner.py to \u201cwrap\u201d your learner appropriately to frame the trading problem for it. Utilize the template provided in StrategyLearner.py.\u00a0<\/span><span> Remember that impact should be included in the learner\u2019s decision process.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\"><\/span><\/p>\n<p><span data-contrast=\"auto\">Your Strategy Learner should find the optimal parameters **that you choose to optimize** for each indicator and should result in more than one trade. Remember, the indicators used must match those used for Manual Strategy.\u00a0 However, optimization of the indicators does not need to match that of Manual Strategy.\u00a0 Example: for SMA the learner could find the optimal lookback window to use.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">NOTE: Lookback windows are not required to be optimized. You can use the same window used in the Manual Strategy if you wish.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">Your StrategyLearner should implement the following API:<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p>[\/et_pb_text][et_pb_code _builder_version=&#8221;4.11.1&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;]<script src=\"https:\/\/gist.github.com\/CS7646-ML4T\/2f8c01ba266a6996323f29630acd4923.js\"><\/script>[\/et_pb_code][et_pb_text admin_label=&#8221;3.3.2 Cont&#8221; _builder_version=&#8221;4.11.1&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<p><span data-contrast=\"auto\">The input parameters are:<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">verbose: if False do not generate any output<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">impact: The market impact of each transaction<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">commission: The commission amount charged.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">symbol: The stock symbol to train on<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">sd: A datetime object that represents the start date<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">ed: A datetime object that represents the end date<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">sv: Start value of the portfolio<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<\/ul>\n<p><span data-contrast=\"auto\">The output result is:<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"2\" data-aria-level=\"1\"><span data-contrast=\"auto\">df_trades: A data frame whose values represent trades for each day. Legal values are +1000.0 indicating a BUY of 1000 shares, -1000.0 indicating a SELL of 1000 shares, and 0.0 indicating NOTHING. Values of +2000 and -2000 for trades are also legal when switching from long to short or short to long so long as net holdings are constrained to -1000, 0, and 1000.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<\/ul>\n<p>[\/et_pb_text][et_pb_text admin_label=&#8221;3.3.3 Implement Experiment 1&#8243; _builder_version=&#8221;4.14.7&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h4><span>3.3.3 Implement Experiment 1<\/span><\/h4>\n<p><span data-contrast=\"auto\"><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun SCXW140239592 BCX4\"><span class=\"NormalTextRun SCXW140239592 BCX4\">Not included in the template. You will have to create this code file<\/span><\/span><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun SCXW140239592 BCX4\"><span class=\"NormalTextRun SCXW140239592 BCX4\">.<\/span><\/span><span class=\"EOP SCXW140239592 BCX4\" data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/span><\/p>\n<p><span>Experiment 1 should compare the results of your manual <\/span><span>strategy<\/span><span> and the strategy learner. It should:<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span>Compare your Manual Strategy with your Strategy Learner in-sample trading JPM.<\/span>\u00a0C<span>reate a chart that shows:<\/span><span data-contrast=\"auto\">\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span>Value of the <\/span><span>ManualStrategy<\/span><span> portfolio (normalized to 1.0 at the start)<\/span><span data-contrast=\"auto\">\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"2\" data-aria-level=\"1\"><span>Value of the <\/span><span>StrategyLearner<\/span><span> portfolio (normalized to 1.0 at the start)<\/span><span data-contrast=\"auto\">\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><span>Value of the Benchmark portfolio (normalized to 1.0 at the start)<\/span><span data-contrast=\"auto\">\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<\/ul>\n<p><span>Compare your Man<\/span><span>ual Strategy with your Strategy Learner out-of-sample trading JPM<\/span><span>.<\/span> <span>C<\/span><span>reate a chart that shows:<\/span><span data-contrast=\"auto\">\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"4\" data-aria-level=\"1\"><span>Value of the <\/span><span>ManualStrategy<\/span><span> portfolio (normalized to 1.0 at the start)<\/span><span data-contrast=\"auto\">\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"4\" data-aria-level=\"1\"><span>Value of the <\/span><span>StrategyLearner<\/span><span> portfolio (normalized to 1.0 at the start)<\/span><span data-contrast=\"auto\">\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"4\" data-aria-level=\"1\"><span>Value of the Benchmark portfolio (normalized to 1.0 at the start)<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<\/ul>\n<ul><\/ul>\n<p><span data-contrast=\"auto\">The code that implements this experiment and generates the relevant charts and data should be submitted as experiment1.py.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">See DATA DETAILS, DATES &amp; RULES section above for commission and impact information.\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p>[\/et_pb_text][et_pb_text admin_label=&#8221;3.3.4 Implement Experiment 2&#8243; _builder_version=&#8221;4.14.7&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h4><span>3.3.4 Implement Experiment 2<\/span><\/h4>\n<p><b><span data-contrast=\"auto\">Not included in the template. You will have to create this code file<\/span><\/b><span data-contrast=\"auto\">.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">Conduct an experiment with your StrategyLearner that shows how changing the value of impact should affect in-sample trading behavior. <\/span><\/p>\n<p><span data-contrast=\"auto\"><span class=\"TrackChangeTextInsertion TrackedChange TrackChangeHoverSelectColorRed SCXW58073841 BCX4\"><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun SCXW58073841 BCX4\"><span class=\"NormalTextRun TrackChangeHoverSelectHighlightRed SCXW58073841 BCX4\">Select two <\/span><\/span><\/span><span class=\"TrackChangeTextInsertion TrackedChange TrackChangeHoverSelectColorRed SCXW58073841 BCX4\"><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun SCXW58073841 BCX4\"><span class=\"NormalTextRun SpellingErrorV2 TrackChangeHoverSelectHighlightRed SCXW58073841 BCX4\">metrics<\/span><\/span><\/span><span class=\"TrackChangeTextInsertion TrackedChange TrackChangeHoverSelectColorRed SCXW58073841 BCX4\"><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun SCXW58073841 BCX4\"><span class=\"NormalTextRun SpellingErrorV2 TrackChangeHoverSelectHighlightRed SCXW58073841 BCX4\">, and<\/span><\/span><\/span><span class=\"TrackChangeTextInsertion TrackedChange TrackChangeHoverSelectColorRed SCXW58073841 BCX4\"><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun SCXW58073841 BCX4\"><span class=\"NormalTextRun TrackChangeHoverSelectHighlightRed SCXW58073841 BCX4\"> generate tests that will provide you <\/span><\/span><\/span><span class=\"TrackChangeTextInsertion TrackedChange TrackChangeHoverSelectColorRed SCXW58073841 BCX4\"><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun SCXW58073841 BCX4\"><span class=\"NormalTextRun TrackChangeHoverSelectHighlightRed SCXW58073841 BCX4\">with at least 3\u00a0<\/span><\/span><\/span><span class=\"TrackChangeTextInsertion TrackedChange SCXW58073841 BCX4\"><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun SCXW58073841 BCX4\"><span class=\"NormalTextRun SCXW58073841 BCX4\">measurements<\/span><\/span><\/span><span class=\"TrackChangeTextInsertion TrackedChange SCXW58073841 BCX4\"><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun SCXW58073841 BCX4\"><span class=\"NormalTextRun SCXW58073841 BCX4\"> when trading<\/span><\/span><\/span>\u00a0JPM on the in-sample period with a commission of $0.00.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\"> <span class=\"TrackChangeTextInsertion TrackedChange SCXW67234246 BCX4\"><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun SCXW67234246 BCX4\"><span class=\"NormalTextRun SCXW67234246 BCX4\">Generate charts that support<\/span><\/span><\/span><span class=\"TrackChangeTextInsertion TrackedChange SCXW67234246 BCX4\"><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun SCXW67234246 BCX4\"><span class=\"NormalTextRun SCXW67234246 BCX4\"> your tests and show<\/span><\/span><\/span><span class=\"TrackChangeTextInsertion TrackedChange SCXW67234246 BCX4\"><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun SCXW67234246 BCX4\"><span class=\"NormalTextRun SCXW67234246 BCX4\"> your results.<\/span><\/span><\/span><span class=\"TrackChangeTextDeletion TrackedChange SCXW67234246 BCX4\"><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun SCXW67234246 BCX4\"><span class=\"NormalTextRun SCXW67234246 BCX4\">\u00a0<\/span><\/span><\/span><\/span><\/p>\n<p><span data-contrast=\"auto\">The code that implements this experiment and generates the relevant charts and data should be submitted as experiment2.py.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">See the \u2018Report\u2019 section on Experiment 2 for more details.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p>[\/et_pb_text][et_pb_text admin_label=&#8221;3.3.5 Implement Test Project&#8221; _builder_version=&#8221;4.14.7&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h4><span>3.3.5 Implement Test Project<\/span><\/h4>\n<p><span data-contrast=\"auto\">Execution Limit: 10 minutes<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><b><span data-contrast=\"auto\">Not included in the template. You will have to create this code file.<\/span><\/b><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">Create testproject.py. Testproject.py is the entry point to your project, and it should\u00a0implement the necessary calls (following each respective API) to Manual Strategy.py, StrategyLearner.py, experiment1.py, and experiment2.py with the appropriate parameters to run everything needed for the report in a single Python call:<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p>[\/et_pb_text][et_pb_code _builder_version=&#8221;4.11.1&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;]<script src=\"https:\/\/gist.github.com\/CS7646-ML4T\/84037499eef2e86f5a309b6e471fcf94.js\"><\/script>[\/et_pb_code][et_pb_text admin_label=&#8221;3.3.6 Implement author() function\/method&#8221; _builder_version=&#8221;4.11.1&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h4><span>3.3.6 Implement author() function\/method<\/span><\/h4>\n<p><span data-contrast=\"auto\">Deduction if not implemented<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">You should implement a function called author() that returns your Georgia Tech user ID as a string in all python files. This is the ID you use to log into Canvas. It is not your 9 digit student number. Here is an example of how you might implement author():<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p>[\/et_pb_text][et_pb_code _builder_version=&#8221;4.11.1&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;]<script src=\"https:\/\/gist.github.com\/CS7646-ML4T\/9b9dfbd03755e2a3a55e9f0d08e49c5c.js\"><\/script>[\/et_pb_code][et_pb_text admin_label=&#8221;3.3.7 Create README&#8221; _builder_version=&#8221;4.11.1&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h4><span>3.3.7 Create README<\/span><\/h4>\n<p><span data-contrast=\"auto\">Deduction if not present or instructions to run your code is incorrect<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">Create a file named README.txt that describes:<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">Each file you are submitting.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"2\" data-aria-level=\"1\"><span data-contrast=\"auto\">Step-by-step instructions to run your code.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<\/ul>\n<p>[\/et_pb_text][et_pb_text admin_label=&#8221;3.4 Technical Requirements&#8221; _builder_version=&#8221;4.11.1&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h3>3.4 Technical Requirements<\/h3>\n<p><span data-contrast=\"auto\">The following technical requirements apply to this assignment:<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">The file testproject.py must run within 10 minutes.\u00a0<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<\/ul>\n<p>[\/et_pb_text][et_pb_text admin_label=&#8221;3.5 Hints and Resources&#8221; _builder_version=&#8221;4.14.7&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h3><span>3.5 Hints and Resources<\/span><\/h3>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"2\" data-aria-level=\"1\"><span data-contrast=\"auto\">You can use util.py to read some other values (e.g., columns other than adjusted close) from the data. Look carefully at util.py and you will see that you can query for other values.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><span data-contrast=\"auto\">Your <\/span><b><span data-contrast=\"auto\">positions<\/span><\/b><span data-contrast=\"auto\"> must be one of three fixed sizes: -1000 shares, +1000 shares, 0 shares.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"4\" data-aria-level=\"1\"><span data-contrast=\"auto\">You can <\/span><b><span data-contrast=\"auto\">trade<\/span><\/b><span data-contrast=\"auto\"> up to 1000 or 2000 shares at a time as long as you maintain the requirement of holding 1000, 0, or -1000 shares.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"4\" data-aria-level=\"1\"><span data-contrast=\"auto\">There is no limit on leverage. This means that you don\u2019t need to verify that you have enough cash in your portfolio to make a trade.<\/span><\/li>\n<\/ul>\n<ul><\/ul>\n<p>[\/et_pb_text][\/et_pb_column][\/et_pb_row][et_pb_row admin_label=&#8221;4 Contents of Report&#8221; module_id=&#8221;report&#8221; _builder_version=&#8221;4.14.7&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.4.5&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_text _builder_version=&#8221;4.14.7&#8243; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h2>4 Contents of Report<\/h2>\n<p><span data-contrast=\"auto\">Answer the following prompt in a maximum of 10 pages (excluding references) in <\/span><a href=\"https:\/\/drive.google.com\/drive\/folders\/1xDYIomn9e9FxbIeFcsclSbXHTtHROD1j\" target=\"_blank\" rel=\"noopener\"><span data-contrast=\"none\">JDF format<\/span><\/a><span data-contrast=\"auto\">. Any content beyond 10 pages will not be considered for a grade. Ten pages is a maximum, not a target; our recommended per-section lengths intentionally add to less than 10 pages to leave you room to decide where to delve into more detail. This length is intentionally set expecting that your submission will include diagrams, drawings, pictures, etc. These should be incorporated into the body of the paper unless specifically required to be included in an appendix.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">The <\/span><a href=\"https:\/\/drive.google.com\/drive\/folders\/1xDYIomn9e9FxbIeFcsclSbXHTtHROD1j\" target=\"_blank\" rel=\"noopener\"><span data-contrast=\"none\">JDF format<\/span><\/a><span data-contrast=\"auto\"> specifies font sizes and margins, which should not be altered. Include charts and tables to support each of your answers. Charts and tables should be generated by the code and saved to files. Charts should be properly annotated with legible and appropriately named labels, titles, and legends. Tables should be properly annotated with column names. When numbers are presented in tables, ensure a sufficient level of numeric precision is provided.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><span data-contrast=\"auto\">Please address each of these points\/questions in your report. You may include additional charts in your submission, but the total number of charts may not exceed 10 charts. The report is to be submitted as <\/span><b><span data-contrast=\"auto\">p8_strategyEval_report.pdf<\/span><\/b><span data-contrast=\"auto\">.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\"><span class=\"TrackChangeTextInsertion TrackedChange TrackChangeHoverSelectColorRed SCXW10787267 BCX4\"><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun SCXW10787267 BCX4\"><span class=\"NormalTextRun TrackChangeHoverSelectHighlightRed SCXW10787267 BCX4\">At a minimum, the report must contain the following sections:<\/span><\/span><\/span><span data-contrast=\"auto\" xml:lang=\"EN-US\" lang=\"EN-US\" class=\"TextRun EmptyTextRun SCXW10787267 BCX4\"><\/span><span class=\"EOP SCXW10787267 BCX4\" data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/span><\/p>\n<p><b><span data-contrast=\"auto\">Introduction: ~ 0.5 pages <\/span><\/b><span data-contrast=\"auto\">(Optional)<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">The report should briefly describe the paper\u2019s justification. While the introduction may assume that the reader has some domain knowledge, it should assume that the reader is unfamiliar with the specifics of the assignment. The introduction should also present an initial hypothesis (or hypotheses).<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><b><span data-contrast=\"auto\"><\/span><\/b><\/p>\n<p><b><span data-contrast=\"auto\">Indicator Overview: ~1 page<\/span><\/b><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">Briefly describe the indicators you used to devise your <\/span><b><span data-contrast=\"auto\">Manual Strategy<\/span><\/b><span data-contrast=\"auto\"> and <\/span><b><span data-contrast=\"auto\">Strategy Learner<\/span><\/b><span data-contrast=\"auto\">. You must use a minimum of 3 indicators of the 5 you implemented in Project 6. At a minimum, for each indicator discuss the following:<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span><span data-contrast=\"auto\"><span>Include a brief description of how the <\/span><\/span><\/span><span><span data-contrast=\"auto\"><span>indicator is implemented.<\/span><\/span><\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><span data-contrast=\"auto\"><\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">Discuss the parameters for each indicator that are optimized in both Manual Strategy and Strategy Learner.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<\/ul>\n<p><span data-contrast=\"auto\">Hint: If you use Bollinger Bands in Project 6 and want to use that indicator here, you can replace it with BB %B, which should work better with this assignment.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><b><span data-contrast=\"auto\"><\/span><\/b><\/p>\n<p><b><span data-contrast=\"auto\">Manual Strategy: ~3 pages<\/span><\/b><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><b><span data-contrast=\"auto\">Describe<\/span><\/b><span data-contrast=\"auto\"> how you combined your indicators to create an overall signal. <\/span><b><span data-contrast=\"auto\">Explain<\/span><\/b><span data-contrast=\"auto\"> how and why you decide to enter and exit your positions? Why do you believe (or not) that this is an effective strategy? <\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\"><\/span><\/p>\n<p><b><span data-contrast=\"auto\">Compare<\/span><\/b><span data-contrast=\"auto\"> the performance of your Manual Strategy versus the benchmark for the in-sample and out-of-sample time periods. Provide your charts to support the discussion.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><b><span data-contrast=\"auto\">Evaluate<\/span><\/b><span data-contrast=\"auto\"> the performance of your strategy in the out-of-sample period. Note that you should not train or tweak your approach to this data. You should use the classification learned using the in-sample data only. <\/span><\/p>\n<p><span data-contrast=\"auto\"> <\/span><b><span data-contrast=\"auto\">Explain WHY<\/span><\/b> <b><span data-contrast=\"auto\">these differences occur<\/span><\/b><span data-contrast=\"auto\">. <\/span><span data-contrast=\"auto\"><\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><b><span data-contrast=\"auto\"><\/span><\/b><\/p>\n<p><b><span data-contrast=\"auto\">Strategy Learner: ~1.5 pages<\/span><\/b><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">The centerpiece of this section should be the description of how you utilized your learner to determine trades:<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">Describe the steps you took to frame the trading problem as a learning problem for your learner.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"2\" data-aria-level=\"1\"><span data-contrast=\"auto\">Describe the hyperparameters, their values, and how they were determined.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><span data-contrast=\"auto\">Describe how you discretized (standardized) or otherwise adjusted your data. If this was not performed or necessary, explain why.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<\/ul>\n<p><b><span data-contrast=\"auto\"><\/span><\/b><\/p>\n<p><b><span data-contrast=\"auto\">Experiment 1 (Manual Strategy \/ Strategy Learner): ~1.5 pages<\/span><\/b><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><b><span data-contrast=\"auto\">Describe<\/span><\/b><span data-contrast=\"auto\"> your experiment in detail: This includes any assumptions, the initial experimental hypothesis, parameter values, and any other information that would enable an informed reader to set up and repeat the experiment.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><b><span data-contrast=\"auto\">Describe, interpret, and summarize<\/span><\/b><span data-contrast=\"auto\"> the outcome of your experiment, and include your charts from experiment 1. Would you expect this relative result every time with in-sample data? Explain why or why not.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\"><\/span><\/p>\n<ul><\/ul>\n<p><b><span data-contrast=\"auto\">Experiment 2 (Strategy Learner): ~1.5 pages<\/span><\/b><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">Provide a hypothesis regarding how changing the value of impact should affect in-sample trading behavior and results (provide at least two metrics, assessing a minimum of 3 different measurements for each metric).<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">Your descriptions should be stated clearly enough that an informed reader could conduct the experiment and reproduce the results without referencing your code.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><b><span data-contrast=\"auto\"><\/span><\/b><\/p>\n<p><b><span data-contrast=\"auto\">References: ~0.25 pages (Optional)<\/span><\/b><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">References should be placed at the end of the paper in a dedicated section. Reference lists should be numbered and organized alphabetically by the author\u2019s last name. If multiple papers have the same author(s) and year, you may append a letter to the end of the year to allow differentiated in-line text (e.g. Joyner, 2018a and Joyner, 2018b in the section above). If multiple papers have the same author(s), list them in chronological order starting with the older paper. Only works that are cited in-line should be included in the reference list. The reference list does not count against the length requirements.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p>[\/et_pb_text][\/et_pb_column][\/et_pb_row][et_pb_row admin_label=&#8221;5 Testing Recommendations&#8221; module_id=&#8221;testing&#8221; _builder_version=&#8221;4.14.7&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.4.5&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_text _builder_version=&#8221;4.14.4&#8243; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h2><span>5 Testing Recommendations<\/span><\/h2>\n<p><span data-contrast=\"auto\">To test your code, we will invoke each of the functions. You are encouraged to perform any tests necessary to instill confidence that the code will run properly when submitted for grading and will produce the required results. You should confirm that testproject.py runs as expected.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">In addition to testing on your local machine, you are encouraged to submit your file to Gradescope TESTING, where some basic pre-validation tests will be performed against the code. <b>There are two Gradescope TESTING environments; one for the strategy evaluation and another for the testproject.py file<\/b>. No credit will be given for coding assignments that do not pass this pre-validation. <\/span><b><span data-contrast=\"auto\">Gradescope TESTING does not grade your assignment.<\/span><\/b><span data-contrast=\"auto\"> The Gradescope TESTING script is not a complete test suite and does not match the more stringent private grader that is used in Gradescope SUBMISSION. Thus, the maximum Gradescope TESTING score of 60, while instructional, does not represent the minimum score one can expect when the assignment is graded using the private grading script. You are encouraged to develop additional tests to ensure that all project requirements are met.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">You are allowed <\/span><b><span data-contrast=\"auto\">unlimited<\/span><\/b><span data-contrast=\"auto\"> resubmissions to Gradescope <\/span><b><span data-contrast=\"auto\">TESTING<\/span><\/b><span data-contrast=\"auto\">. Please refer to the <\/span><a href=\"https:\/\/lucylabs.gatech.edu\/ml4t\/spring2022\/gradescope\/\" target=\"_blank\" rel=\"noopener\"><span data-contrast=\"none\">Gradescope Instructions<\/span><\/a><span data-contrast=\"auto\"> for more information.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p>[\/et_pb_text][\/et_pb_column][\/et_pb_row][et_pb_row admin_label=&#8221;6 Submission Requirements&#8221; module_id=&#8221;submission&#8221; _builder_version=&#8221;4.14.7&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.4.5&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_text _builder_version=&#8221;4.14.7&#8243; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h2>6 Submission Requirements<\/h2>\n<p><b><span data-contrast=\"auto\">This is an individual assignment<\/span><\/b><span data-contrast=\"auto\">. All work you submit should be your own. Make sure to cite any sources you reference and use quotes and in-line citations to mark any direct quotes.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span>Assignment due dates in your time zone can be found by looking at the<\/span><span> Project in the Assignment menu item in Canvas (ensure your Canvas time zone settings are set up properly).\u00a0<\/span> <span>This date <\/span><span>is 23:59 AOE <\/span><span>converted to <\/span><span>your time zone.\u00a0 <\/span><span>Late submissions are allowed for a penalty.\u00a0 The times and penalties are as follows:<\/span><span data-ccp-props=\"{&quot;201341983&quot;:0,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/p>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span>-10% Late Penalty: +1 Hour late: submitted by 00:59 AOE (next day)<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:0,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"2\" data-aria-level=\"1\"><span>-25% Late Penalty: +12 Hours Late: submitted by 11:59 AOE (next day)<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:0,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><span>-50% Late Penalty: +24 Hours Late: submitted by 23:59 AOE (next day)<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:0,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"2\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><span>-100% Late Penalty: &gt; 24+ Late: submitted after 23:59 AOE (next day)<\/span><span>\u00a0<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:0,&quot;335551550&quot;:1,&quot;335551620&quot;:1,&quot;335559739&quot;:160,&quot;335559740&quot;:259}\">\u00a0<\/span><\/li>\n<\/ul>\n<ul><\/ul>\n<p><span data-contrast=\"auto\">Assignments received after Monday at 23:59 AOE (even if only by a few seconds) are not accepted without advanced agreement except in cases of medical or family emergencies. In the case of such an emergency, please contact the <\/span><a href=\"https:\/\/gatech-advocate.symplicity.com\/care_report\/index.php\/pid986879?\" target=\"_blank\" rel=\"noopener\"><span data-contrast=\"none\">Dean of Students<\/span><\/a><span data-contrast=\"auto\">.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p>[\/et_pb_text][et_pb_text admin_label=&#8221;6.1 Report Submission&#8221; _builder_version=&#8221;4.14.7&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h3>6.1 Report Submission<\/h3>\n<p><span data-contrast=\"auto\">Complete your report using the JDF format, then save your submission as a PDF. The report is to be submitted as <\/span><b><span data-contrast=\"auto\">p8_strategyEval_report.pdf<\/span><\/b><span data-contrast=\"auto\">. Assignments should be submitted to the corresponding assignment submission page in Canvas. You should submit a single PDF for this assignment. Please submit the following file(s) to Canvas in PDF format only:<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p style=\"padding-left: 80px;\"><b><span data-contrast=\"auto\">p8_strategyEval _report.pdf<\/span><\/b><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559685&quot;:720,&quot;335559737&quot;:720,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">Do not submit any other files. All charts must be included in the report, not submitted as separate files. Also note that when we run your submitted code, it should generate all charts. Not submitting a report will result in a penalty.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">You are allowed unlimited submissions of the <\/span><b><span data-contrast=\"auto\">p8_strategyEval_report.pdf<\/span><\/b><span data-contrast=\"auto\"> file to <\/span><b><span data-contrast=\"auto\">Canvas<\/span><\/b><span data-contrast=\"auto\">.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p>[\/et_pb_text][et_pb_text admin_label=&#8221;6.2 Code Submission&#8221; _builder_version=&#8221;4.11.1&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h3>6.2 Code Submission<\/h3>\n<p><span data-contrast=\"auto\">This class uses Gradescope, a server-side auto-grader, to evaluate your code submission. No credit will be given for code that does not run in this environment and students are encouraged to leverage Gradescope TESTING prior to submitting an assignment for grading. <\/span><b><span data-contrast=\"auto\">Only code submitted to Gradescope SUBMISSION will be graded. If you submit your code to Gradescope TESTING and have not also submitted your code to Gradescope SUBMISSION, you will receive a zero (0).<\/span><\/b><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">Please submit the following file to Gradescope <\/span><b><span data-contrast=\"auto\">SUBMISSION<\/span><\/b><span data-contrast=\"auto\">:<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">Your code as:\u00a0<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559685&quot;:360,&quot;335559739&quot;:170,&quot;335559740&quot;:340,&quot;335559991&quot;:360}\">\u00a0<\/span><\/p>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">&lt;Implemented Learner&gt;.py<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\"><br \/><\/span><i><span data-contrast=\"auto\">Note: &lt;Implemented Learner.py&gt; refers to: QLearner.py or RTLearner (okay to submit DTLearner if using inheritance) and BagLearner.py, and OptimizeLearner.py.<\/span><\/i><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559685&quot;:360,&quot;335559739&quot;:170,&quot;335559740&quot;:340,&quot;335559991&quot;:360}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">ManualStrategy.py<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">StrategyLearner.py<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">indicators.py<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">experiment1.py<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">experiment2.py<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">marketsimcode.py (optional if needed)<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">testproject.py<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">README.txt<\/span><\/li>\n<\/ul>\n<p><span data-contrast=\"auto\">Do not submit any other files.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><b><span data-contrast=\"auto\">Important: You are allowed a MAXIMUM of three (3) code submissions to Gradescope <\/span><\/b><b><span data-contrast=\"auto\">SUBMISSION<\/span><\/b><b><span data-contrast=\"auto\">.<\/span><\/b><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<ul><\/ul>\n<ul><\/ul>\n<p>[\/et_pb_text][\/et_pb_column][\/et_pb_row][et_pb_row admin_label=&#8221;7 Grading Information&#8221; module_id=&#8221;grading&#8221; _builder_version=&#8221;4.14.7&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.10.3&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_text _builder_version=&#8221;4.14.7&#8243; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h2>7 Grading Information<\/h2>\n<p><span data-contrast=\"auto\">Your report is worth 30% of your grade. As such, it will be graded on a 30-point scale coinciding with a rubric design to mirror the questions above. Make sure to answer the questions. The submitted code (which is worth 70% of your grade) is run as a batch job after the project deadline. The code will be graded using a 70-point scale coinciding with a rubric design to mirror the implementation details above. Deductions will be applied for unmet implementation requirements or code that fails to run.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">We do not provide an explicit set timeline for returning grades, except that all assignments and exams will be graded before the institute deadline (end of the term). As will be the case throughout the term, the grading team will work as quickly as possible to provide project feedback and grades.\u00a0<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">Once grades are released, any grade-related matters must follow the <\/span><a href=\"https:\/\/lucylabs.gatech.edu\/ml4t\/spring2022\/assignment-follow-up\/\" target=\"_blank\" rel=\"noopener\"><span data-contrast=\"none\">Assignment Follow-Up guidelines and process<\/span><\/a><span data-contrast=\"auto\"> alone. Regrading will only be undertaken in cases where there has been a genuine error or misunderstanding. Please note that requests will be denied if they are not submitted using the <\/span><span data-contrast=\"auto\">Spring 2022<\/span><span data-contrast=\"auto\">\u00a0form or do not fall within the timeframes specified on the <\/span><a href=\"https:\/\/lucylabs.gatech.edu\/ml4t\/spring2022\/assignment-follow-up\/\" target=\"_blank\" rel=\"noopener\"><span data-contrast=\"none\">Assignment Follow-Up<\/span><\/a><span data-contrast=\"auto\"> page.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p>[\/et_pb_text][et_pb_text admin_label=&#8221;7.1 Grading Rubric&#8221; _builder_version=&#8221;4.11.1&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h3>7.1 Grading Rubric<\/h3>\n<p>[\/et_pb_text][et_pb_text admin_label=&#8221;7.1.1 Report&#8221; _builder_version=&#8221;4.14.9&#8243; _module_preset=&#8221;default&#8221; hover_enabled=&#8221;0&#8243; global_colors_info=&#8221;{}&#8221; sticky_enabled=&#8221;0&#8243;]<\/p>\n<h4>7.1.1 Report [30 points]<\/h4>\n<p><span data-contrast=\"auto\">The following adjustments will be applied to the report:<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">Overall Report (max deduction, -30 Points)<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">If the report is especially well written (up to +2 point bonus)<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"2\" data-aria-level=\"1\"><span data-contrast=\"auto\">If the strategy does not utilize a minimum of 3 indicators (up to -30 points)<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><span data-contrast=\"auto\">If the report description does not match the code (up to -10 points)<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<\/ul>\n<p><span data-contrast=\"auto\">Indicator Overview (max deduction, -2 Points)<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">If the indicators used in Manual Strategy and Strategy Learner are not briefly described (up to -2 points)<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<\/ul>\n<p><span data-contrast=\"auto\">Manual Strategy (max deduction, -6 Points)<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"2\" data-aria-level=\"1\"><span data-contrast=\"auto\">If the trading strategy is not described with clarity or with insufficient detail for someone else to reproduce it (up to -4 points)<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><span data-contrast=\"auto\">If the manual trading system does not provide a higher cumulative return than the benchmark over the in-sample time period (-2 points)<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><span data-contrast=\"auto\">If differences between the in-sample and out-of-sample performances are not appropriately explained (up to -4 points)<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><span data-contrast=\"auto\">If the required table is not present or is incorrect (up to -2 points)<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><span data-contrast=\"auto\">If the student did not use the correct symbol (-2 points)<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><span data-contrast=\"auto\">If the student did not use the correct date periods (-2 points)<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><span data-contrast=\"auto\">If the strategy does not obey holding constraints (-6 points)<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><span data-contrast=\"auto\">Does the provided chart(s) include:<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><span data-contrast=\"auto\">Value of benchmark normalized to 1.0 with <\/span><b><span data-contrast=\"auto\">purple line<\/span><\/b><span data-contrast=\"auto\"> (-1 point, if not)<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><span data-contrast=\"auto\">Value of portfolio normalized to 1.0 with <\/span><b><span data-contrast=\"auto\">red line<\/span><\/b><span data-contrast=\"auto\"> (-1 point, if not)<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><span data-contrast=\"auto\">Are vertical lines, appropriately colored, included to indicate entries (-1 point, if not)<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p><span data-contrast=\"auto\">Strategy Learner (max deduction, -6 Points)<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">If the method by which the learner is utilized to create a trading strategy is not described sufficiently clearly that an informed reader could reproduce the results without referencing your code (up to -5 points)<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"2\" data-aria-level=\"1\"><span data-contrast=\"auto\">If the student chooses to use optimization-based learning and their learning strategy beat the Manual Strategy (+1 bonus point)<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<\/ul>\n<p><span data-contrast=\"auto\">Experiment 1 (max deduction, -10 Points)<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><span data-contrast=\"auto\">If the required experiment is not explained well (up to -7 points)<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"4\" data-aria-level=\"1\"><span data-contrast=\"auto\">If the required experiment is not compellingly supported with the required chart (-3 points)<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<\/ul>\n<p><span data-contrast=\"auto\">Experiment 2 (max deduction, -6 Points)<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">If the required experiment is not explained well (up to -4 points)<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"2\" data-aria-level=\"1\"><span data-contrast=\"auto\">If the required experiment is not compellingly supported with tabular or graphical data (-2 points)<\/span><\/li>\n<\/ul>\n<p>[\/et_pb_text][et_pb_text admin_label=&#8221;7.1.2 Code&#8221; _builder_version=&#8221;4.14.7&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h4>7.1.2 Code<\/h4>\n<p><span data-contrast=\"auto\">Code deductions will be applied if any of the following occur:<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">If the submitted code indicators.py does not properly reflect the indicators provided in the report (up to -30 points)<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"2\" data-aria-level=\"1\"><span data-contrast=\"auto\">If the indicators used for Manual Strategy and Strategy Learner are not the same as the ones used in Project 6 (up to -30 points)<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><span data-contrast=\"auto\">If the submitted code and report does not reflect an understanding of the subject matter or does not follow the assignment directions (up to -30 points)<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"4\" data-aria-level=\"1\"><span data-contrast=\"auto\">If the author() method is missing. (up to -5 for each missing instance, with a maximum of -10 points)<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"5\" data-aria-level=\"1\"><span data-contrast=\"auto\">If the README.text file is missing or contains incorrect instructions (-10 points)<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"5\" data-aria-level=\"1\"><span data-contrast=\"auto\">If testproject.py does not produce all included charts in one run and within the time limit without any manipulation (up to -30 points)<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"5\" data-aria-level=\"1\"><span data-contrast=\"auto\">If the charts are not created and saved using Python code.? (up to -30 points) <\/span><i><span data-contrast=\"auto\">DO NOT use plt.show() and manually save your charts<\/span><\/i><span data-contrast=\"auto\">.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"5\" data-aria-level=\"1\"><span>If the code saves in a directory outside\u00a0<\/span><span>the project\u00a0<\/span><span>directory<\/span><span>.\u00a0 (up to a max of \u201330 points<\/span><\/li>\n<\/ul>\n<p>[\/et_pb_text][et_pb_text admin_label=&#8221;7.1.3 Code &#038; Report&#8221; _builder_version=&#8221;4.11.1&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h4><span>7.1.3 Code &amp; Report<\/span><\/h4>\n<p><span data-contrast=\"auto\">Submission of code and report (up to 100 points deductions):<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><span data-contrast=\"auto\">If the required code is not provided (including code to recreate the charts and usage of correct trades data frame). (up to -100)<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><span data-contrast=\"auto\">If the required report is not provided (up to -100)<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<\/ul>\n<ul><\/ul>\n<ul><\/ul>\n<p>[\/et_pb_text][et_pb_text admin_label=&#8221;7.1.4 Auto-Grader&#8221; _builder_version=&#8221;4.11.1&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h4>7.1.4 Auto-Grader (Private Grading Script) [70 points]<\/h4>\n<p><span data-contrast=\"auto\">We will test Strategy Learner in the following situations:<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"2\" data-aria-level=\"1\"><span data-contrast=\"auto\">Training \/ in-sample: January 1, 2008 to December 31, 2009.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><span data-contrast=\"auto\">Testing \/ out-of-sample: January 1, 2010 to December 31 2011.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><span data-contrast=\"auto\">Symbols: ML4T-220, AAPL, UNH, SINE_FAST_NOISE<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><span data-contrast=\"auto\">Starting value: $100,000<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><span data-contrast=\"auto\">Benchmark: Buy 1000 shares on the first trading day, Sell 1000 shares on the last day.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><span data-contrast=\"auto\">Commissions = $0.00, impact = 0.00<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<\/ul>\n<ul><\/ul>\n<p><span data-contrast=\"auto\">We expect the following outcomes in evaluating your system:<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">For ML4T-220<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">add_evidence() completes without crashing within 25 seconds: 1 points<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">testPolicy() completes in-sample within 5 seconds: 2 points<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">testPolicy() returns same result when called in-sample twice: 2 points<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">testPolicy() returns an in-sample result with cumulative return greater than 100%: 5 points<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">testPolicy() returns an out-of-sample result with cumulative return greater than 100%: 5 points<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<\/ul>\n<\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">For AAPL<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">add_evidence() completes without crashing within 25 seconds: 1 points<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">testPolicy() completes in-sample within 5 seconds: 2 points<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">testPolicy() returns same result when called in-sample twice: 2 points<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">testPolicy() returns an in-sample result with cumulative return greater than benchmark: 5 points<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">testPolicy() returns an out-of-sample result within 5 seconds: 5 points<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<\/ul>\n<\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">For SINE_FAST_NOISE<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">add_evidence() completes without crashing within 25 seconds: 1 points<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">testPolicy() completes in-sample within 5 seconds: 2 points<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">testPolicy() returns same result when called in-sample twice: 2 points<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">testPolicy() returns an in-sample result with cumulative return greater than 200%: 5 points<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">testPolicy() returns an out-of-sample result within 5 seconds: 5 points<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<\/ul>\n<\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">For UNH<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">add_evidence() completes without crashing within 25 seconds: 1 points<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">testPolicy() completes in-sample within 5 seconds: 2 points<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">testPolicy() returns same result when called in-sample twice: 2 points<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">testPolicy() returns an in-sample result with cumulative return greater than benchmark: 5 points<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">testPolicy() returns an out-of-sample result within 5 seconds: 5 points<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<\/ul>\n<\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">Withheld test case 1: In-sample test case for an unknown symbol.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">If any part of code crashes: 0 points awarded.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">testPolicy() returns an in-sample result with cumulative return greater than benchmark: 5 points<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<\/ul>\n<\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">Withheld test case 2: In-sample test case to verify that strategy accounts for different values of impact<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">If any part of code crashes: 0 points awarded.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">Learner returns different trades when impact value is significantly different: 5 points<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">We reserve the right to use different time periods if necessary to reduce auto grading time.<\/span><\/p>\n<p>[\/et_pb_text][et_pb_text admin_label=&#8221;7.1.5 IMPORTANT NOTES&#8221; _builder_version=&#8221;4.11.1&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h4><span>7.1.5 IMPORTANT NOTES<\/span><\/h4>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">For achieving the required cumulative return, recall that cr = (portval[-1]\/portval[0]) &#8211; 1.0<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"2\" data-aria-level=\"1\"><span data-contrast=\"auto\">The requirement that consecutive calls to testPolicy() produce the same output for the same input means that you <\/span><b><span data-contrast=\"auto\">cannot<\/span><\/b><span data-contrast=\"auto\"> update, train, or tune your learner in this method. For example, a solution that uses Q-Learning should use querySetState() and not query() in testPolicy(). Updating, training, and tuning (query()) is fine inside add_evidence().<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><span data-contrast=\"auto\">Your learner should <\/span><b><span data-contrast=\"auto\">not<\/span><\/b><span data-contrast=\"auto\"> select different hyper-parameters based on the <\/span><b><span data-contrast=\"auto\">symbol<\/span><\/b><span data-contrast=\"auto\">. Hyper-parameters include (but are not limited to) things like features, discretization size, sub-learning methods (for ensemble learners). Tuning using cross-validation or otherwise pre-processing the <\/span><b><span data-contrast=\"auto\">data<\/span><\/b><span data-contrast=\"auto\"> is OK, things like if symbol==&#8221;UNH&#8221; is <\/span><b><span data-contrast=\"auto\">not OK<\/span><\/b><span data-contrast=\"auto\">. There will be a withheld test case that checks your code on a valid symbol that is not one of the four listed above.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><span data-contrast=\"auto\">Presence of code like if symbol==&#8221;UNH&#8221; will result in a 20 point penalty.<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"3\" data-aria-level=\"1\"><span data-contrast=\"auto\">When evaluating the trades generated by your learner, we <\/span><b><span data-contrast=\"auto\">will<\/span><\/b><span data-contrast=\"auto\"> consider transaction costs (market impact).<\/span><\/li>\n<\/ul>\n<p>[\/et_pb_text][\/et_pb_column][\/et_pb_row][et_pb_row admin_label=&#8221;8 DEVELOPMENT GUIDELINES (ALLOWED &#038; PROHIBITED) &#8221; module_id=&#8221;guidelines&#8221; _builder_version=&#8221;4.14.7&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.10.3&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_text _builder_version=&#8221;4.14.4&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h2><span>8 DEVELOPMENT GUIDELINES (ALLOWED &amp; PROHIBITED)<\/span><\/h2>\n<p><span data-contrast=\"auto\">See the <\/span><a href=\"https:\/\/lucylabs.gatech.edu\/ml4t\/spring2022\/project-guidelines\/\" target=\"_blank\" rel=\"noopener\"><span data-contrast=\"auto\">Course Development Recommendations, Guidelines, and Rules<\/span><\/a><span data-contrast=\"auto\"> for the complete list of requirements applicable to all course assignments. <\/span><b><span data-contrast=\"auto\">The Project Technical Requirements are grouped into three sections: Always Allowed, Prohibited with Some Exceptions, and Always Prohibited<\/span><\/b><span data-contrast=\"auto\">.<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">The following exemptions to the Course Development Recommendations, Guidelines, and Rules apply to this project:<\/span><span data-ccp-props=\"{&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/p>\n<ul>\n<li data-leveltext=\"\uf0d7\" data-font=\"Symbol\" data-listid=\"3\" aria-setsize=\"-1\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">N\/A<\/span><span data-ccp-props=\"{&quot;134233279&quot;:true,&quot;201341983&quot;:1,&quot;335551550&quot;:6,&quot;335551620&quot;:6,&quot;335559739&quot;:170,&quot;335559740&quot;:340}\">\u00a0<\/span><\/li>\n<\/ul>\n<p>[\/et_pb_text][\/et_pb_column][\/et_pb_row][\/et_pb_section]<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Project 8: Strategy EvaluationRevisions This assignment is subject to change up until 3 weeks prior to the due date. We do not anticipate changes; any changes will be logged in this section. 01 Feb 2022 Revisions to sections 2.1, 2.2, 3.1, 3.2, 3.3, 3.3.1, 3.3.2, 3.3.3, 3.3.4, 3.3.5, 3.5, 4, 6, and 7.1.2 16 Feb [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":2441,"menu_order":21,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_et_pb_use_builder":"on","_et_pb_old_content":"","_et_gb_content_width":"","footnotes":""},"class_list":["post-2489","page","type-page","status-publish","hentry"],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/lucylabs.gatech.edu\/ml4t\/wp-json\/wp\/v2\/pages\/2489","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lucylabs.gatech.edu\/ml4t\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/lucylabs.gatech.edu\/ml4t\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/lucylabs.gatech.edu\/ml4t\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/lucylabs.gatech.edu\/ml4t\/wp-json\/wp\/v2\/comments?post=2489"}],"version-history":[{"count":12,"href":"https:\/\/lucylabs.gatech.edu\/ml4t\/wp-json\/wp\/v2\/pages\/2489\/revisions"}],"predecessor-version":[{"id":2842,"href":"https:\/\/lucylabs.gatech.edu\/ml4t\/wp-json\/wp\/v2\/pages\/2489\/revisions\/2842"}],"up":[{"embeddable":true,"href":"https:\/\/lucylabs.gatech.edu\/ml4t\/wp-json\/wp\/v2\/pages\/2441"}],"wp:attachment":[{"href":"https:\/\/lucylabs.gatech.edu\/ml4t\/wp-json\/wp\/v2\/media?parent=2489"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}