<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://quantsoftware.gatech.edu/index.php?action=history&amp;feed=atom&amp;title=Fall_2019_Project_2%3A_Optimize_Something</id>
	<title>Fall 2019 Project 2: Optimize Something - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://quantsoftware.gatech.edu/index.php?action=history&amp;feed=atom&amp;title=Fall_2019_Project_2%3A_Optimize_Something"/>
	<link rel="alternate" type="text/html" href="http://quantsoftware.gatech.edu/index.php?title=Fall_2019_Project_2:_Optimize_Something&amp;action=history"/>
	<updated>2026-04-15T02:33:45Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.34.4</generator>
	<entry>
		<id>http://quantsoftware.gatech.edu/index.php?title=Fall_2019_Project_2:_Optimize_Something&amp;diff=3347&amp;oldid=prev</id>
		<title>Jfox44: /* Rubric */</title>
		<link rel="alternate" type="text/html" href="http://quantsoftware.gatech.edu/index.php?title=Fall_2019_Project_2:_Optimize_Something&amp;diff=3347&amp;oldid=prev"/>
		<updated>2019-08-19T18:54:10Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Rubric&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 18:54, 19 August 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l88&quot; &gt;Line 88:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 88:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* -10 missing required data series (didn’t plot one of portfolio or SPY)&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* -10 missing required data series (didn’t plot one of portfolio or SPY)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* -2 chart labels/text/legend unreadable (too small, labels overlap a lot, etc) or missing.  &lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* -2 chart labels/text/legend unreadable (too small, labels overlap a lot, etc) or missing.  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* -10 Does the code generate appropriate charts written to png files? &amp;lt;b&amp;gt; DO NOT use plt.show() and manually save your &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;figures&lt;/del&gt;. The &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;figures &lt;/del&gt;should be created and saved using Python code&amp;lt;/b&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* -10 Does the code generate appropriate charts written to png files? &amp;lt;b&amp;gt; DO NOT use plt.show() and manually save your &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;charts&lt;/ins&gt;. The &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;charts &lt;/ins&gt;should be created and saved using Python code&amp;lt;/b&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*Min score: 0.  &lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*Min score: 0.  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Jfox44</name></author>
		
	</entry>
	<entry>
		<id>http://quantsoftware.gatech.edu/index.php?title=Fall_2019_Project_2:_Optimize_Something&amp;diff=3331&amp;oldid=prev</id>
		<title>Jfox44: /* Rubric */</title>
		<link rel="alternate" type="text/html" href="http://quantsoftware.gatech.edu/index.php?title=Fall_2019_Project_2:_Optimize_Something&amp;diff=3331&amp;oldid=prev"/>
		<updated>2019-08-19T17:42:59Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Rubric&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 17:42, 19 August 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l91&quot; &gt;Line 91:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 91:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*Min score: 0.  &lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*Min score: 0.  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Part 2: 10 test cases [80 points]&amp;lt;br /&amp;gt;We will test your code against 10 cases (8 points per case).  Each case will be deemed &amp;quot;correct&amp;quot; if:&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Part 2: 10 test cases [80 points]&amp;lt;br /&amp;gt;We will test your code against 10 cases (8 points per case &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;**No partial credit**&lt;/ins&gt;).  Each case will be deemed &amp;quot;correct&amp;quot; if:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* sum(allocations) = 1.0 +- 0.02 (2 points)&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* sum(allocations) = 1.0 +- 0.02 (2 points)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Each allocation is between 0 and 1.0 +- 0.02 (negative allocations are allowed if they are very small) (2 points)&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Each allocation is between 0 and 1.0 +- 0.02 (negative allocations are allowed if they are very small) (2 points)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Jfox44</name></author>
		
	</entry>
	<entry>
		<id>http://quantsoftware.gatech.edu/index.php?title=Fall_2019_Project_2:_Optimize_Something&amp;diff=3330&amp;oldid=prev</id>
		<title>Jfox44: /* Required, Allowed &amp; Prohibited */</title>
		<link rel="alternate" type="text/html" href="http://quantsoftware.gatech.edu/index.php?title=Fall_2019_Project_2:_Optimize_Something&amp;diff=3330&amp;oldid=prev"/>
		<updated>2019-08-19T17:40:25Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Required, Allowed &amp;amp; Prohibited&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 17:40, 19 August 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l117&quot; &gt;Line 117:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 117:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Use of any code other than util.py to read in data.&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Use of any code other than util.py to read in data.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Use of Python&amp;#039;s os module.&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Use of Python&amp;#039;s os module.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Any code you did not write yourself (except for the &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;5 line rule in the &amp;quot;allowed&amp;quot; section&lt;/del&gt;).&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Any code you did not write yourself (except for &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;provided/allowed by &lt;/ins&gt;the &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;instructor&lt;/ins&gt;).&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Camels and other dromedaries.&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Camels and other dromedaries.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Jfox44</name></author>
		
	</entry>
	<entry>
		<id>http://quantsoftware.gatech.edu/index.php?title=Fall_2019_Project_2:_Optimize_Something&amp;diff=3329&amp;oldid=prev</id>
		<title>Jfox44: /* Rubric */</title>
		<link rel="alternate" type="text/html" href="http://quantsoftware.gatech.edu/index.php?title=Fall_2019_Project_2:_Optimize_Something&amp;diff=3329&amp;oldid=prev"/>
		<updated>2019-08-19T17:35:45Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Rubric&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 17:35, 19 August 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l88&quot; &gt;Line 88:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 88:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* -10 missing required data series (didn’t plot one of portfolio or SPY)&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* -10 missing required data series (didn’t plot one of portfolio or SPY)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* -2 chart labels/text/legend unreadable (too small, labels overlap a lot, etc) or missing.  &lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* -2 chart labels/text/legend unreadable (too small, labels overlap a lot, etc) or missing.  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* -10 Does the code generate appropriate charts written to png files? &amp;lt;b&amp;gt; DO NOT use plt.show() and manually save your figures. The figures should be created and saved using Python code&amp;lt;/b&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*Min score: 0.  &lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*Min score: 0.  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Jfox44</name></author>
		
	</entry>
	<entry>
		<id>http://quantsoftware.gatech.edu/index.php?title=Fall_2019_Project_2:_Optimize_Something&amp;diff=3206&amp;oldid=prev</id>
		<title>David.joyner: Python 2.7 -&gt; 3.6</title>
		<link rel="alternate" type="text/html" href="http://quantsoftware.gatech.edu/index.php?title=Fall_2019_Project_2:_Optimize_Something&amp;diff=3206&amp;oldid=prev"/>
		<updated>2019-08-04T17:02:54Z</updated>

		<summary type="html">&lt;p&gt;Python 2.7 -&amp;gt; 3.6&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 17:02, 4 August 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l99&quot; &gt;Line 99:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 99:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Required:&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Required:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Your project must be coded in Python &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;2&lt;/del&gt;.&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;7&lt;/del&gt;.x.&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Your project must be coded in Python &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;3&lt;/ins&gt;.&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;6&lt;/ins&gt;.x.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Your code must run on one of the university-provided computers (e.g. buffet01.cc.gatech.edu).&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Your code must run on one of the university-provided computers (e.g. buffet01.cc.gatech.edu).&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Use the code for reading in historical data provided in util.py. Only use the API methods provided here to read in stock data. Do NOT modify this file. For grading, we will use our own unmodified version.&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Use the code for reading in historical data provided in util.py. Only use the API methods provided here to read in stock data. Do NOT modify this file. For grading, we will use our own unmodified version.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>David.joyner</name></author>
		
	</entry>
	<entry>
		<id>http://quantsoftware.gatech.edu/index.php?title=Fall_2019_Project_2:_Optimize_Something&amp;diff=3197&amp;oldid=prev</id>
		<title>David.joyner: Copy from Summer and change to Fall</title>
		<link rel="alternate" type="text/html" href="http://quantsoftware.gatech.edu/index.php?title=Fall_2019_Project_2:_Optimize_Something&amp;diff=3197&amp;oldid=prev"/>
		<updated>2019-08-04T16:19:41Z</updated>

		<summary type="html">&lt;p&gt;Copy from Summer and change to Fall&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==Revisions==&lt;br /&gt;
&lt;br /&gt;
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.&lt;br /&gt;
&lt;br /&gt;
==Overview==&lt;br /&gt;
&lt;br /&gt;
In this project you will use what you learned about optimizers to optimize a portfolio.  That means that you will find how much of a portfolio&amp;#039;s funds should be allocated to each stock so as to optimize it&amp;#039;s performance.  We can optimize for many different metrics.  In this version of the assignment we will maximize Sharpe Ratio.&lt;br /&gt;
&lt;br /&gt;
You can leverage the functions in the now deprecated (optional) [[assess portfolio]] project that assessed the value of a portfolio with a given set of allocations. &lt;br /&gt;
&lt;br /&gt;
An older version of this project: [[MC1-Project-2-archive]]&lt;br /&gt;
&lt;br /&gt;
==Task==&lt;br /&gt;
&lt;br /&gt;
Implement a Python function named &amp;lt;tt&amp;gt;optimize_portfolio()&amp;lt;/tt&amp;gt; in the file &amp;lt;tt&amp;gt;optimization.py&amp;lt;/tt&amp;gt; that can find the optimal allocations for a given set of stocks. You should optimize for maximum Sharpe Ratio.&lt;br /&gt;
&lt;br /&gt;
The function should accept as input a list of symbols as well as start and end dates and return a list of floats (as a one-dimensional numpy array) that represents the allocations to each of the equities. You can take advantage of routines developed in the optional assess portfolio project to compute daily portfolio value and statistics.  You should cut-and-paste your code for the functions that did this into &amp;lt;tt&amp;gt;optimization.py&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
You are given the following inputs for optimizing a portfolio:&lt;br /&gt;
* A date range to select the historical data to use (specified by a start and end date)&lt;br /&gt;
* Symbols for equities (e.g., GOOG, AAPL, GLD, XOM). Note: You should support any symbol in the data directory. Your code should support any number of assets &amp;gt;= 2.  Don&amp;#039;t hardcode 4.&lt;br /&gt;
&lt;br /&gt;
Your goal is to find allocations to the symbols that optimize the criteria given above.  Assume 252 trading days in a year and a risk free return of 0.0 per day.  You should implement the following API EXACTLY, if you do not your submission will be penalized.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
import datetime as dt&lt;br /&gt;
allocs, cr, adr, sddr, sr = \&lt;br /&gt;
    optimize_portfolio(sd=dt.datetime(2008,1,1), ed=dt.datetime(2009,1,1), \&lt;br /&gt;
    syms=[&amp;#039;GOOG&amp;#039;,&amp;#039;AAPL&amp;#039;,&amp;#039;GLD&amp;#039;,&amp;#039;XOM&amp;#039;], gen_plot=False)&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Where the returned output is:&lt;br /&gt;
* allocs: A 1-d Numpy ndarray of allocations to the stocks.  All the allocations must be between 0.0 and 1.0 and they must sum to 1.0.&lt;br /&gt;
* cr: Cumulative return&lt;br /&gt;
* adr: Average daily return&lt;br /&gt;
* sddr: Standard deviation of daily return&lt;br /&gt;
* sr: Sharpe ratio&lt;br /&gt;
&lt;br /&gt;
The input parameters are:&lt;br /&gt;
* sd: A datetime object that represents the start date&lt;br /&gt;
* ed: A datetime object that represents the end date&lt;br /&gt;
* syms: A list of symbols that make up the portfolio (note that your code should support any symbol in the data directory)&lt;br /&gt;
* gen_plot: If True, optionally create a plot named &amp;lt;tt&amp;gt;plot.png&amp;lt;/tt&amp;gt;. Autograder will always call your code with gen_plot = False.&lt;br /&gt;
&lt;br /&gt;
ALL of your code should be present in the single file &amp;lt;tt&amp;gt;optimization.py&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
An example chart that you might create for assessing your optimizer.&lt;br /&gt;
&lt;br /&gt;
[[File:comparison_optimal.png]]&lt;br /&gt;
&lt;br /&gt;
==Template==&lt;br /&gt;
&lt;br /&gt;
Instructions:&lt;br /&gt;
* Download the template code here: [[File:19fall_optimize_something.zip]]&lt;br /&gt;
* Implement the &amp;lt;tt&amp;gt;optimize_portfolio()&amp;lt;/tt&amp;gt; function in &amp;lt;tt&amp;gt;optimize_something/optimization.py&amp;lt;/tt&amp;gt;. The grading script for this project is &amp;lt;tt&amp;gt;&amp;#039;&amp;#039;&amp;#039;grade_optimization.py&amp;#039;&amp;#039;&amp;#039;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
* To execute your optimization code for debugging purposes, run &amp;lt;tt&amp;gt;&amp;#039;&amp;#039;&amp;#039;PYTHONPATH=..:. python optimization.py&amp;#039;&amp;#039;&amp;#039;&amp;lt;/tt&amp;gt; from the &amp;lt;tt&amp;gt;optimize_something/&amp;lt;/tt&amp;gt; directory.&lt;br /&gt;
* To run the grading script, follow the instructions given in [[ML4T Software Setup]]&lt;br /&gt;
&lt;br /&gt;
To test your code, we will be calling &amp;lt;tt&amp;gt;optimize_portfolio()&amp;lt;/tt&amp;gt; only.&lt;br /&gt;
&lt;br /&gt;
==Suggestions==&lt;br /&gt;
&lt;br /&gt;
* Refer to comments in the provided helper code for pointers regarding how to implement it. In order to specify bounds and constraints when using the &amp;lt;tt&amp;gt;scipy.optmize&amp;lt;/tt&amp;gt; module, you&amp;#039;ll need to use a special syntax explained here: http://docs.scipy.org/doc/scipy/reference/generated/scipy.optimize.minimize.html&lt;br /&gt;
&lt;br /&gt;
* For bounds, you simply need to pass in a sequence of 2-tuples &amp;lt;tt&amp;gt;(&amp;amp;lt;low&amp;amp;gt;, &amp;amp;lt;high&amp;amp;gt;)&amp;lt;/tt&amp;gt;. Just remember that you need to supply as many tuples as the number of stocks in your portfolio.&lt;br /&gt;
&lt;br /&gt;
* For constraints, it&amp;#039;s a little tricky. You need to pass in a sequence of dicts (dictionaries), one dictionary per constraint. Each dictionary must specify the type of constraint (&amp;lt;tt&amp;gt;&amp;#039;eq&amp;#039;&amp;lt;/tt&amp;gt; for equality, or &amp;lt;tt&amp;gt;&amp;#039;ineq&amp;#039;&amp;lt;/tt&amp;gt; for inequality), and a function that &amp;#039;&amp;#039;returns 0 only when the input satisfies the constraint&amp;#039;&amp;#039; (this is the same input that is supplied to your evaluation function). E.g. to constrain the sum of all values in the input array to be less than 50, you could pass in the following (lambdas are just anonymous functions defined on-the-spot):&lt;br /&gt;
 constraints = ({ &amp;#039;type&amp;#039;: &amp;#039;ineq&amp;#039;, &amp;#039;fun&amp;#039;: lambda inputs: 50.0 - np.sum(inputs) })&lt;br /&gt;
&lt;br /&gt;
* Use a uniform allocation of 1/n to each of the n assets as your initial guess.&lt;br /&gt;
&lt;br /&gt;
==What to turn in==&lt;br /&gt;
Be sure to follow these instructions exactly!&lt;br /&gt;
&lt;br /&gt;
Via Canvas, submit as attachments (no zip files; refer to schedule for deadline):&lt;br /&gt;
&lt;br /&gt;
* Your code as &amp;lt;tt&amp;gt;optimization.py&amp;lt;/tt&amp;gt; (only the function &amp;lt;tt&amp;gt;optimize_portfolio()&amp;lt;/tt&amp;gt; will be tested).  Make sure that all necessary code is in that file. Please submit the code (.py) into the assignment &amp;quot;Project 2: Optimize Something (Code)&amp;quot; only&lt;br /&gt;
* A report &amp;lt;tt&amp;gt;report.pdf&amp;lt;/tt&amp;gt; that includes a chart comparing the optimal portfolio with SPY using the following parameters:&amp;lt;br /&amp;gt;Start Date: 2008-06-01, End Date: 2009-06-01, Symbols: [&amp;#039;IBM&amp;#039;, &amp;#039;X&amp;#039;, &amp;#039;GLD&amp;#039;, &amp;#039;JPM&amp;#039;]. Please submit the report (.pdf) into the assignment &amp;quot;Project 2: Optimize Something (Report) only&lt;br /&gt;
&lt;br /&gt;
Unlimited resubmissions are allowed up to the deadline for the project.&lt;br /&gt;
&lt;br /&gt;
==Rubric==&lt;br /&gt;
&lt;br /&gt;
Part 1: Chart is correct [20 points]&lt;br /&gt;
* -20 no chart or chart is total nonsense&lt;br /&gt;
* -10 chart wrong shape (incl. wrong time period, etc) xor -5 chart partly wrong shape (diverges from correct halfway through, etc)&lt;br /&gt;
* -10 chart not normalized xor -5 chart data scale substantially wrong (right shape, normalized to 1, but max/end values wrong, 3.5 instead of 2.5 etc)&lt;br /&gt;
* -10 missing required data series (didn’t plot one of portfolio or SPY)&lt;br /&gt;
* -2 chart labels/text/legend unreadable (too small, labels overlap a lot, etc) or missing. &lt;br /&gt;
*Min score: 0. &lt;br /&gt;
&lt;br /&gt;
Part 2: 10 test cases [80 points]&amp;lt;br /&amp;gt;We will test your code against 10 cases (8 points per case).  Each case will be deemed &amp;quot;correct&amp;quot; if:&lt;br /&gt;
* sum(allocations) = 1.0 +- 0.02 (2 points)&lt;br /&gt;
* Each allocation is between 0 and 1.0 +- 0.02 (negative allocations are allowed if they are very small) (2 points)&lt;br /&gt;
* Standard deviation of daily return of the allocated portfolio is within 5% of reference solution or lower (4 points)&lt;br /&gt;
** Deprecated: Each allocation matches reference solution +- 0.10 (4 points)&lt;br /&gt;
&lt;br /&gt;
==Required, Allowed &amp;amp; Prohibited==&lt;br /&gt;
&lt;br /&gt;
Required:&lt;br /&gt;
* Your project must be coded in Python 2.7.x.&lt;br /&gt;
* Your code must run on one of the university-provided computers (e.g. buffet01.cc.gatech.edu).&lt;br /&gt;
* Use the code for reading in historical data provided in util.py. Only use the API methods provided here to read in stock data. Do NOT modify this file. For grading, we will use our own unmodified version.&lt;br /&gt;
* Your code must run in less than 5 seconds on one of the university-provided computers.&lt;br /&gt;
&lt;br /&gt;
Allowed:&lt;br /&gt;
* You can develop your code on your personal machine, but it must also run successfully on one of the university provided machines or virtual images.&lt;br /&gt;
* Your code may use standard Python libraries (except os).&lt;br /&gt;
* You may use the NumPy, SciPy, matplotlib and Pandas libraries.  Be sure you are using the correct versions.&lt;br /&gt;
* Code provided by the instructor, or allowed by the instructor to be shared.&lt;br /&gt;
&lt;br /&gt;
Prohibited:&lt;br /&gt;
* Any use of global variables.&lt;br /&gt;
* Any libraries not listed in the &amp;quot;allowed&amp;quot; section above.&lt;br /&gt;
* Calls to code in any other local files besides util.py &lt;br /&gt;
* Use of any code other than util.py to read in data.&lt;br /&gt;
* Use of Python&amp;#039;s os module.&lt;br /&gt;
* Any code you did not write yourself (except for the 5 line rule in the &amp;quot;allowed&amp;quot; section).&lt;br /&gt;
* Camels and other dromedaries.&lt;/div&gt;</summary>
		<author><name>David.joyner</name></author>
		
	</entry>
</feed>