forked from QuantConnect/Documentation
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path00.html
367 lines (337 loc) · 44.5 KB
/
00.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
<div style="border-bottom: solid 1px #e4e6ea; display: flex; width: 100%; margin-top: 2rem; ">
<div style="margin-right: 15px; margin-top: 3px;">
<img src="https://cdn.quantconnect.com/i/tu/docs-algo-icon.svg"/>
</div>
<div class="documentation-main-header">
<h1 style="margin-top:0; line-height:0.9">Writing Algorithms</h1>
<h2 style="margin-top: 8px;">
<span style="font-size: 22px;">Learn tools you need to build algorithmic trading strategies</span>
</h2>
</div>
</div>
<div class="docs-super-section-header">
<div class="docs-super-section-header-content">
<div class="copy">
<h3>Feature Complete Algorithmic Trading API</h3>
<p class="description">Build on a mature, flexible, feature-complete API managing billions of dollars capital, and used by 5,000+ investors every month.</p>
<a href="/docs/v2/writing-algorithms/key-concepts/getting-started">Get Started</a>
<a href="https://cdn.quantconnect.com/docs/i/Quantconnect-Writing-Algorithms-Python.pdf" class="section-pdf python">Download PDF</a>
<a href="https://cdn.quantconnect.com/docs/i/Quantconnect-Writing-Algorithms-CSharp.pdf" class="section-pdf csharp">Download PDF</a>
</div>
</div>
<div class="super-section-image">
<img src="https://cdn.quantconnect.com/i/tu/writing-algo-header-img.webp" alt="Writing Algorithms" style="width:382px;">
</div>
</div>
<div class="docs-super-section-links">
<h5>IN THIS SECTION</h5>
<a href="/docs/v2/writing-algorithms/key-concepts/getting-started">Getting Started</a>
<a href="/docs/v2/writing-algorithms/securities/asset-classes">Supported Asset Classes</a>
<a href="/docs/v2/writing-algorithms/trading-and-orders/key-concepts">Trading and Orders</a>
<a href="/docs/v2/writing-algorithms/api-reference">API Reference</a>
</div>
<hr>
<div class="internal-links-container">
<a class="internal-link" href="/docs/v2/writing-algorithms/key-concepts/getting-started">
<div class="internal-link-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="22" height="33" viewBox="0 0 22 33">
<g transform="translate(-1483.709 -546.188)">
<g transform="translate(-30.791 -117.302)">
<path
d="M422.256,460.411H415.1a2.241,2.241,0,0,1-2.283-2.192v-1.887l-.008-.144a4.782,4.782,0,0,0-1.6-3.18,10.006,10.006,0,0,1-2.674-3.6,10.344,10.344,0,0,1-.848-4.51,9.913,9.913,0,0,1,3.132-6.786,11.3,11.3,0,0,1,7.11-3.086c.25-.016.5-.023.751-.023a11.328,11.328,0,0,1,7.751,2.989,9.9,9.9,0,0,1,3.249,7.3,9.286,9.286,0,0,1-3.256,7.332,5.572,5.572,0,0,0-1.883,3.831v1.764A2.242,2.242,0,0,1,422.256,460.411Zm-7.577-5.279h.138v3.087c0,.091.121.192.283.192h7.156c.162,0,.283-.1.283-.192v-1.764a7.571,7.571,0,0,1,2.555-5.327l.012-.011a7.273,7.273,0,0,0,2.571-5.826c0-4.572-4.037-8.291-9-8.291-.207,0-.418.007-.627.02-4.534.282-8.209,3.775-8.367,7.951a8.332,8.332,0,0,0,.682,3.633,7.993,7.993,0,0,0,2.152,2.893l.037.032A6.9,6.9,0,0,1,414.68,455.132Z"
transform="translate(1106.821 228.489)" fill="#8f9ca3" />
<path d="M7421.81,1669.118h-6.679a1,1,0,0,1,0-2h6.679a1,1,0,0,1,0,2Z"
transform="translate(-5892.439 -976.637)" fill="#8f9ca3" />
<path d="M3,2.1A3.1,3.1,0,0,1,0,0H5.993A3.1,3.1,0,0,1,3,2.1Z"
transform="translate(1523.291 694.386)" fill="#8f9ca3" />
</g>
</g>
</svg>
</div>
<div class="internal-link-content">
<h4>Key Concepts</h4>
<p>Learn the key concepts before developing your algorithm</p>
</div>
</a>
<a class="internal-link" href="/docs/v2/writing-algorithms/initialization">
<div class="internal-link-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="35.37" height="33.102" viewBox="0 0 35.37 33.102"><g transform="translate(-1465 -551)"><g transform="translate(1466 552)"><path d="M2.639-1A3.639,3.639,0,1,1-1,2.639,3.643,3.643,0,0,1,2.639-1Zm0,5.278A1.639,1.639,0,1,0,1,2.639,1.641,1.641,0,0,0,2.639,4.278Z" transform="translate(7.917 7.917)" fill="#8f9ca3"/><path d="M11.633,23.113a2.923,2.923,0,0,1-2.919-2.919v-.072a.58.58,0,0,0-.382-.525l-.059-.024a.583.583,0,0,0-.641.114l-.053.053a2.92,2.92,0,1,1-4.13-4.131l.053-.053a.581.581,0,0,0,.113-.64l0-.01a.583.583,0,0,0-.534-.354H2.919a2.919,2.919,0,1,1,0-5.839h.072a.58.58,0,0,0,.525-.382q.011-.03.024-.059a.581.581,0,0,0-.114-.64L3.374,7.58A2.92,2.92,0,1,1,7.5,3.451l.052.052a.583.583,0,0,0,.641.114,1,1,0,0,1,.191-.062.583.583,0,0,0,.249-.476V2.919a2.919,2.919,0,1,1,5.839,0v.086a.582.582,0,0,0,.354.53l.01,0a.583.583,0,0,0,.641-.114l.053-.053A2.92,2.92,0,1,1,19.663,7.5l-.052.052A.581.581,0,0,0,19.5,8.2a1,1,0,0,1,.062.191.583.583,0,0,0,.476.249h.159a2.919,2.919,0,1,1,0,5.839h-.086a.582.582,0,0,0-.53.354l0,.01a.581.581,0,0,0,.114.641l.053.053a2.92,2.92,0,1,1-4.131,4.13l-.053-.053a.583.583,0,0,0-.64-.113l-.01,0a.583.583,0,0,0-.354.534v.159A2.923,2.923,0,0,1,11.633,23.113ZM9.052,17.731a2.569,2.569,0,0,1,1.661,2.353q0,.012,0,.023v.086a.919.919,0,0,0,1.839,0v-.163a2.595,2.595,0,0,1,4.406-1.847l.008.008.058.058a.92.92,0,1,0,1.3-1.3l-.058-.058-.008-.008A2.6,2.6,0,0,1,20.1,12.476h.09a.919.919,0,1,0,0-1.839h-.163a2.583,2.583,0,0,1-2.368-1.566,1,1,0,0,1-.072-.259,2.57,2.57,0,0,1,.593-2.657l.008-.008.058-.058a.92.92,0,1,0-1.3-1.3l-.058.058-.008.008A2.6,2.6,0,0,1,12.476,3.01v-.09a.919.919,0,1,0-1.839,0v.163A2.584,2.584,0,0,1,9.071,5.451a1,1,0,0,1-.259.072A2.584,2.584,0,0,1,6.155,4.93l-.008-.008-.058-.058a.92.92,0,1,0-1.3,1.3l.058.058.008.008a2.571,2.571,0,0,1,.529,2.821,2.569,2.569,0,0,1-2.353,1.662h-.11a.919.919,0,1,0,0,1.839h.163A2.6,2.6,0,0,1,4.93,16.958l-.008.008-.058.058a.92.92,0,1,0,1.3,1.3l.058-.058.008-.008a2.583,2.583,0,0,1,2.821-.529Z" transform="translate(-1 -1)" fill="#8f9ca3"/></g><g transform="translate(1485.05 568.781)"><path d="M1.632-1A2.632,2.632,0,1,1-1,1.632,2.635,2.635,0,0,1,1.632-1Zm0,3.264A.632.632,0,1,0,1,1.632.632.632,0,0,0,1.632,2.264Z" transform="translate(5.528 5.528)" fill="#8f9ca3"/><path d="M8.212,16.32a2.3,2.3,0,0,1-2.3-2.3v-.04a.074.074,0,0,0-.048-.063L5.8,13.892a.073.073,0,0,0-.03-.006.074.074,0,0,0-.05.019l-.033.033a2.3,2.3,0,1,1-3.256-3.257l.033-.033a.074.074,0,0,0,.013-.08l0-.01a.074.074,0,0,0-.068-.045H2.3a2.3,2.3,0,0,1,0-4.6h.04A.074.074,0,0,0,2.4,5.862q.011-.03.024-.059a.074.074,0,0,0-.013-.08l-.033-.033A2.3,2.3,0,1,1,5.639,2.435l.033.033a.074.074,0,0,0,.05.019.072.072,0,0,0,.03-.006,1,1,0,0,1,.1-.037.074.074,0,0,0,.009-.035V2.3a2.3,2.3,0,1,1,4.6,0V2.36a.073.073,0,0,0,.045.064l.01,0a.073.073,0,0,0,.03.006.074.074,0,0,0,.05-.019l.033-.033a2.3,2.3,0,1,1,3.256,3.257l-.033.033a.074.074,0,0,0-.013.08,1,1,0,0,1,.037.1.074.074,0,0,0,.035.009h.107a2.3,2.3,0,0,1,0,4.6H13.96a.073.073,0,0,0-.064.045l0,.01a.074.074,0,0,0,.013.08l.033.033a2.3,2.3,0,1,1-3.257,3.256l-.033-.033a.074.074,0,0,0-.05-.019.072.072,0,0,0-.03.006l-.01,0a.074.074,0,0,0-.045.068v.107A2.3,2.3,0,0,1,8.212,16.32Zm-1.63-4.271A2.062,2.062,0,0,1,7.91,13.936q0,.012,0,.023v.059a.3.3,0,0,0,.6,0v-.111a2.082,2.082,0,0,1,3.535-1.483l.008.008.039.039a.3.3,0,1,0,.428-.427l-.04-.04L12.477,12a2.083,2.083,0,0,1,1.479-3.535h.063a.3.3,0,0,0,0-.6h-.111a2.074,2.074,0,0,1-1.9-1.257,1,1,0,0,1-.066-.225,2.063,2.063,0,0,1,.486-2.1l.008-.008.039-.039a.3.3,0,1,0-.427-.428L12,3.836,12,3.843A2.083,2.083,0,0,1,8.462,2.364V2.3a.3.3,0,1,0-.6,0v.111A2.074,2.074,0,0,1,6.6,4.315a1,1,0,0,1-.225.067,2.075,2.075,0,0,1-2.1-.486l-.008-.008-.039-.039a.3.3,0,1,0-.428.427l.039.039.008.008a2.064,2.064,0,0,1,.427,2.259A2.062,2.062,0,0,1,2.384,7.91H2.3a.3.3,0,0,0,0,.6h.111A2.083,2.083,0,0,1,3.9,12.049l-.008.008-.039.039a.3.3,0,1,0,.427.428l.04-.04.008-.008a2.074,2.074,0,0,1,2.259-.427Z" transform="translate(-1 -1)" fill="#8f9ca3"/></g></g></svg>
</div>
<div class="internal-link-content">
<h4>Initialization</h4>
<p>The starting point of all algorithms</p>
</div>
</a>
<a class="internal-link" href="/docs/v2/writing-algorithms/securities/key-concepts">
<div class="internal-link-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="30" viewBox="0 0 24 30"><g transform="translate(-1426 -801)"><g transform="translate(758 -361)"><rect width="24" height="30" transform="translate(668 1162)" fill="#fff"/><path d="M2,2V28H22V2H2M0,0H24V30H0Z" transform="translate(668 1162)" fill="#8f9ca3"/></g><path d="M7320.707,1835.207l-1.414-1.414,5.237-5.237,2.85,2.849,5.059-5.059,1.414,1.414-6.473,6.473-2.85-2.849Z" transform="translate(-5888.572 -1009)" fill="#8f9ca3"/><g transform="translate(1425.428 804.5)"><path d="M12,13a1,1,0,0,1-1-1V1a1,1,0,0,1,2,0V12A1,1,0,0,1,12,13Z" transform="translate(-3)" fill="#8f9ca3"/><path d="M10.25,13H6a1,1,0,0,1,0-2h4.25a.75.75,0,0,0,0-1.5H7.75a2.75,2.75,0,0,1,0-5.5H11.5a1,1,0,0,1,0,2H7.75a.75.75,0,0,0,0,1.5h2.5a2.75,2.75,0,0,1,0,5.5Z" transform="translate(0 -2)" fill="#8f9ca3"/></g></g></svg>
</div>
<div class="internal-link-content">
<h4>Securities</h4>
<p>Model of individual financial assets in your algorithm</p>
</div>
</a>
<a class="internal-link" href="/docs/v2/writing-algorithms/portfolio/key-concepts">
<div class="internal-link-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="28" viewBox="0 0 32 28">
<g id="Group_343" data-name="Group 343" transform="translate(-1101 -2061)">
<path id="Rectangle_1175" data-name="Rectangle 1175" d="M3,2A1,1,0,0,0,2,3V19a1,1,0,0,0,1,1H29a1,1,0,0,0,1-1V3a1,1,0,0,0-1-1H3M3,0H29a3,3,0,0,1,3,3V19a3,3,0,0,1-3,3H3a3,3,0,0,1-3-3V3A3,3,0,0,1,3,0Z" transform="translate(1101 2067)" fill="#8f9ca3"/>
<path id="Rectangle_1176" data-name="Rectangle 1176" d="M3,2A1,1,0,0,0,2,3V6H13V3a1,1,0,0,0-1-1H3M3,0h9a3,3,0,0,1,3,3V8H0V3A3,3,0,0,1,3,0Z" transform="translate(1109.5 2061)" fill="#8f9ca3"/>
</g>
</svg>
</div>
<div class="internal-link-content">
<h4>Portfolio</h4>
<p>Model of the collection of assets in your algorithm</p>
</div>
</a>
<a class="internal-link" href="/docs/v2/writing-algorithms/universes/key-concepts">
<div class="internal-link-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="34.003" height="26.453" viewBox="0 0 34.003 26.453"><g transform="translate(-394.708 -529.5)"><path d="M12.226-1A13.226,13.226,0,0,1,25.453,12.226,13.226,13.226,0,0,1,2.874,21.579a13.226,13.226,0,0,1,0-18.7A13.14,13.14,0,0,1,12.226-1Zm0,24.453A11.226,11.226,0,0,0,20.165,4.288,11.226,11.226,0,1,0,4.288,20.165,11.153,11.153,0,0,0,12.226,23.453Z" transform="translate(398.928 530.5)" fill="#8f9ca3"/><path d="M398.091,555.77h-.146c-1.555-.026-2.571-.49-3.017-1.378-.436-.867-.222-1.93.635-3.159a17.155,17.155,0,0,1,3.134-3.192l1.272,1.543c-2.981,2.457-3.329,3.727-3.255,3.909,0,0,.214.259,1.263.276a16.41,16.41,0,0,0,4.078-.629,58.9,58.9,0,0,0,11.078-4.36,60.573,60.573,0,0,0,9.485-5.81,19.434,19.434,0,0,0,3.4-3.18c.68-.878.713-1.32.685-1.382-.081-.16-1.421-.726-5.822.482l-.529-1.929a19.848,19.848,0,0,1,4.941-.83h.035c1.637,0,2.7.463,3.162,1.377.473.941.183,2.108-.862,3.47a20.867,20.867,0,0,1-3.789,3.575,61.71,61.71,0,0,1-9.808,6.014,60.931,60.931,0,0,1-11.475,4.51A18.6,18.6,0,0,1,398.091,555.77Z" transform="translate(0 -2.946)" fill="#8f9ca3"/></g></svg>
</div>
<div class="internal-link-content">
<h4>Universes</h4>
<p>Process of screening or filtering the assets you'd like to trade</p>
</div>
</a>
<a class="internal-link" href="/docs/v2/writing-algorithms/datasets/overview">
<div class="internal-link-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="27" height="30" viewBox="0 0 27 30"><g transform="translate(-2 -1)"><path d="M12.5-1C19.209-1,26,.786,26,4.2S19.209,9.4,12.5,9.4-1,7.614-1,4.2,5.791-1,12.5-1Zm0,8.4a27.855,27.855,0,0,0,8.52-1.178C23.372,5.432,24,4.579,24,4.2s-.628-1.232-2.98-2.022A27.855,27.855,0,0,0,12.5,1,27.855,27.855,0,0,0,3.98,2.178C1.628,2.968,1,3.821,1,4.2s.628,1.232,2.98,2.022A27.855,27.855,0,0,0,12.5,7.4Z" transform="translate(3 2)" fill="#8f9ca3"/><path d="M15.5,17.2a29.9,29.9,0,0,1-9.173-1.281C2.751,14.716,2,13.124,2,12a1,1,0,0,1,2,0c0,.511.917,1.335,2.965,2.024A27.888,27.888,0,0,0,15.5,15.2a27.888,27.888,0,0,0,8.535-1.176C26.083,13.335,27,12.511,27,12a1,1,0,0,1,2,0c0,1.124-.751,2.716-4.327,3.919A29.9,29.9,0,0,1,15.5,17.2Z" transform="translate(0 4)" fill="#8f9ca3"/><path d="M15.5,29.8a29.9,29.9,0,0,1-9.173-1.281C2.751,27.316,2,25.724,2,24.6V5A1,1,0,0,1,4,5V24.6c0,.511.917,1.335,2.965,2.024A27.888,27.888,0,0,0,15.5,27.8a27.888,27.888,0,0,0,8.535-1.176C26.083,25.935,27,25.111,27,24.6V5a1,1,0,0,1,2,0V24.6c0,1.124-.751,2.716-4.327,3.919A29.9,29.9,0,0,1,15.5,29.8Z" transform="translate(0 1.2)" fill="#8f9ca3"/></g></svg>
</div>
<div class="internal-link-content">
<h4>Datasets</h4>
<p>Learn about the available datasets</p>
</div>
</a>
<a class="internal-link" href="/docs/v2/writing-algorithms/importing-data/key-concepts">
<div class="internal-link-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="27" height="39" viewBox="0 0 27 39">
<g id="Group_369" data-name="Group 369" transform="translate(-1357.598 -1509.209)">
<path id="Subtraction_11" data-name="Subtraction 11" d="M2817.885-3157.215c-6.709,0-13.5-1.786-13.5-5.2,0-1.539,1.388-2.854,4.013-3.8l1.586,1.586c-.2.06-.413.125-.62.194-2.352.79-2.98,1.643-2.98,2.021s.628,1.232,2.98,2.022a27.856,27.856,0,0,0,8.52,1.178,27.856,27.856,0,0,0,8.52-1.178c2.352-.79,2.98-1.643,2.98-2.022s-.6-1.2-2.841-1.974l1.546-1.546c2.156.919,3.295,2.137,3.295,3.52C2831.385-3159,2824.594-3157.215,2817.885-3157.215Z" transform="translate(-1446.786 4685.824)" fill="#8f9ca3"/>
<g id="database" transform="translate(1355.598 1517.209)">
<path id="Path_1343" data-name="Path 1343" d="M15.5,17.2a29.9,29.9,0,0,1-9.173-1.281C2.751,14.716,2,13.124,2,12a1,1,0,0,1,2,0c0,.511.917,1.335,2.965,2.024A27.888,27.888,0,0,0,15.5,15.2a27.888,27.888,0,0,0,8.535-1.176C26.083,13.335,27,12.511,27,12a1,1,0,0,1,2,0c0,1.124-.751,2.716-4.327,3.919A29.9,29.9,0,0,1,15.5,17.2Z" transform="translate(0 4)" fill="#8f9ca3"/>
<path id="Path_1344" data-name="Path 1344" d="M15.5,29.8a29.9,29.9,0,0,1-9.173-1.281C2.751,27.316,2,25.724,2,24.6V5A1,1,0,0,1,4,5V24.6c0,.511.917,1.335,2.965,2.024A27.888,27.888,0,0,0,15.5,27.8a27.888,27.888,0,0,0,8.535-1.176C26.083,25.935,27,25.111,27,24.6V5a1,1,0,0,1,2,0V24.6c0,1.124-.751,2.716-4.327,3.919A29.9,29.9,0,0,1,15.5,29.8Z" transform="translate(0 1.2)" fill="#8f9ca3"/>
</g>
<path id="Path_1492" data-name="Path 1492" d="M12,20a1,1,0,0,1-1-1V5a1,1,0,0,1,2,0V19A1,1,0,0,1,12,20Z" transform="translate(1359.598 1505.209)" fill="#8f9ca3"/>
<path id="Path_1493" data-name="Path 1493" d="M12,20a1,1,0,0,1-.707-.293l-7-7a1,1,0,1,1,1.414-1.414L12,17.586l6.293-6.293a1,1,0,1,1,1.414,1.414l-7,7A1,1,0,0,1,12,20Z" transform="translate(1359.598 1505.209)" fill="#8f9ca3"/>
</g>
</svg>
</div>
<div class="internal-link-content">
<h4>Importing Data</h4>
<p>Import your custom data into your algorithm</p>
</div>
</a>
<a class="internal-link" href="/docs/v2/writing-algorithms/consolidating-data/getting-started">
<div class="internal-link-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="27" height="30" viewBox="0 0 27 30"><g transform="translate(-2 -1)"><path d="M12.5-1C19.209-1,26,.786,26,4.2S19.209,9.4,12.5,9.4-1,7.614-1,4.2,5.791-1,12.5-1Zm0,8.4a27.855,27.855,0,0,0,8.52-1.178C23.372,5.432,24,4.579,24,4.2s-.628-1.232-2.98-2.022A27.855,27.855,0,0,0,12.5,1,27.855,27.855,0,0,0,3.98,2.178C1.628,2.968,1,3.821,1,4.2s.628,1.232,2.98,2.022A27.855,27.855,0,0,0,12.5,7.4Z" transform="translate(3 2)" fill="#8f9ca3"/><path d="M15.5,17.2a29.9,29.9,0,0,1-9.173-1.281C2.751,14.716,2,13.124,2,12a1,1,0,0,1,2,0c0,.511.917,1.335,2.965,2.024A27.888,27.888,0,0,0,15.5,15.2a27.888,27.888,0,0,0,8.535-1.176C26.083,13.335,27,12.511,27,12a1,1,0,0,1,2,0c0,1.124-.751,2.716-4.327,3.919A29.9,29.9,0,0,1,15.5,17.2Z" transform="translate(0 4)" fill="#8f9ca3"/><path d="M15.5,29.8a29.9,29.9,0,0,1-9.173-1.281C2.751,27.316,2,25.724,2,24.6V5A1,1,0,0,1,4,5V24.6c0,.511.917,1.335,2.965,2.024A27.888,27.888,0,0,0,15.5,27.8a27.888,27.888,0,0,0,8.535-1.176C26.083,25.935,27,25.111,27,24.6V5a1,1,0,0,1,2,0V24.6c0,1.124-.751,2.716-4.327,3.919A29.9,29.9,0,0,1,15.5,29.8Z" transform="translate(0 1.2)" fill="#8f9ca3"/></g></svg>
</div>
<div class="internal-link-content">
<h4>Consolidating Data</h4>
<p>Create bars of any length from smaller bars</p>
</div>
</a>
<a class="internal-link" href="/docs/v2/writing-algorithms/historical-data/history-requests">
<div class="internal-link-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="31" height="31" viewBox="0 0 31 31"><g transform="translate(-1 -1)"><path d="M14.5-1A15.5,15.5,0,0,1,25.46,25.46,15.5,15.5,0,0,1,3.54,3.54,15.4,15.4,0,0,1,14.5-1Zm0,29A13.5,13.5,0,0,0,24.046,4.954,13.5,13.5,0,1,0,4.954,24.046,13.412,13.412,0,0,0,14.5,28Z" transform="translate(2 2)" fill="#8f9ca3"/><path d="M17.8,18.6a1,1,0,0,1-.446-.106l-5.8-2.9A1,1,0,0,1,11,14.7V6a1,1,0,0,1,2,0v8.082l5.247,2.624A1,1,0,0,1,17.8,18.6Z" transform="translate(4.5 1.8)" fill="#8f9ca3"/></g></svg>
</div>
<div class="internal-link-content">
<h4>Historical Data</h4>
<p>Request historical data</p>
</div>
</a>
<a class="internal-link" href="/docs/v2/writing-algorithms/trading-and-orders/key-concepts">
<div class="internal-link-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="22" height="34.171" viewBox="0 0 22 34.171"><g transform="translate(-1383 -707.878)"><g transform="translate(1383 709.188)"><rect width="10" height="20.563" transform="translate(0 7.813)" fill="#fff"/><path d="M2,2V18.563H8V2H2M0,0H10V20.563H0Z" transform="translate(0 7.813)" fill="#8f9ca3"/><path d="M7285,1738.674h-2v-5.486h2Z" transform="translate(-7278.5 -1705.813)" fill="#8f9ca3"/><path d="M7285,1739.521h-2v-6.333h2Z" transform="translate(-7278.5 -1730.083)" fill="#8f9ca3"/></g><g transform="translate(1395 702.188)"><rect width="10" height="14.563" transform="translate(0 13.813)" fill="#fff"/><path d="M2,2V12.563H8V2H2M0,0H10V14.563H0Z" transform="translate(0 13.813)" fill="#8f9ca3"/><path d="M7285,1738.674h-2v-5.486h2Z" transform="translate(-7278.5 -1705.813)" fill="#8f9ca3"/><path d="M7285,1741.935h-2v-8.747h2Z" transform="translate(-7279 -1727.497)" fill="#8f9ca3"/></g></g></svg>
</div>
<div class="internal-link-content">
<h4>Trading and Orders</h4>
<p>Place and manage orders</p>
</div>
</a>
<a class="internal-link" href="/docs/v2/writing-algorithms/reality-modeling/key-concepts">
<div class="internal-link-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="34.094" height="22.874" viewBox="0 0 34.094 22.874"><g transform="translate(-915.75 -1121.5)"><g transform="translate(-489.25 -62.5)"><path d="M7314.648,2180.782l-1.414-1.414,8.623-8.623,4.683,4.683,8.369-8.368,1.414,1.414-9.783,9.782-4.683-4.683Z" transform="translate(-5901.615 -981)" fill="#8f9ca3"/><path d="M7329.094,2185.874h-28.066v-18.107h2v16.107h26.066Z" transform="translate(-5894 -981)" fill="#8f9ca3"/><path d="M3,0,6,5H0Z" transform="translate(1405 1184)" fill="#8f9ca3"/><path d="M3,0,6,5H0Z" transform="translate(1439.094 1200.874) rotate(90)" fill="#8f9ca3"/></g></g></svg>
</div>
<div class="internal-link-content">
<h4>Reality Modeling</h4>
<p>Model the behavior of things like the fills, slippage, and fees.</p>
</div>
</a>
<a class="internal-link" href="/docs/v2/writing-algorithms/scheduled-events">
<div class="internal-link-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="32" height="33.366" viewBox="0 0 32 33.366"><g transform="translate(-1400.5 -1111.634)"><g transform="translate(1401 1115)"><path d="M13.5-1A14.5,14.5,0,0,1,23.753,23.753,14.5,14.5,0,0,1,3.247,3.247,14.405,14.405,0,0,1,13.5-1Zm0,27A12.5,12.5,0,0,0,22.339,4.661,12.5,12.5,0,1,0,4.661,22.339,12.418,12.418,0,0,0,13.5,26Z" transform="translate(2 2)" fill="#8f9ca3"/><path d="M11.549,15.1H5.466a1,1,0,0,1,0-2h5.083V6a1,1,0,0,1,2,0v8.1A1,1,0,0,1,11.549,15.1Z" transform="translate(3.951 1.4)" fill="#8f9ca3"/></g><path d="M7319.227,2089.848h-10.32v-2h10.32Z" transform="translate(-3862.212 -4350.948) rotate(30)" fill="#8f9ca3"/><path d="M10.32,1H0V-1H10.32Z" transform="translate(1409.938 1112.5) rotate(150)" fill="#8f9ca3"/></g></svg>
</div>
<div class="internal-link-content">
<h4>Scheduled Events</h4>
<p>Execute time-based events</p>
</div>
</a>
<a class="internal-link" href="/docs/v2/writing-algorithms/indicators/key-concepts">
<div class="internal-link-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="35" height="34.007" viewBox="0 0 35 34.007">
<g id="Group_349" data-name="Group 349" transform="translate(-1353 -1667.131)">
<path id="Rectangle_1172" data-name="Rectangle 1172" d="M-1-1H6.284V9.016H-1ZM4.463.821H.821V7.2H4.463Z" transform="translate(1354 1692.122)" fill="#8f9ca3"/>
<path id="Rectangle_1173" data-name="Rectangle 1173" d="M-1-1H6.284V16.3H-1ZM4.463.821H.821V14.479H4.463Z" transform="translate(1364.016 1684.837)" fill="#8f9ca3"/>
<path id="Rectangle_1174" data-name="Rectangle 1174" d="M-1-1H6.284V12.658H-1ZM4.463.821H.821V10.837H4.463Z" transform="translate(1374.032 1688.479)" fill="#8f9ca3"/>
<path id="Path_1492" data-name="Path 1492" d="M-1924.419,5142.8l-1.288-1.288,11.7-11.7,8.274,8.274,7.63-7.63,1.288,1.288-8.918,8.918-8.274-8.274Z" transform="translate(3278.974 -3457.411)" fill="#8f9ca3"/>
<path id="Polygon_49" data-name="Polygon 49" d="M3.642,0,7.284,6.07H0Z" transform="translate(1382.849 1667.131) rotate(45)" fill="#8f9ca3"/>
</g>
</svg>
</div>
<div class="internal-link-content">
<h4>Indicators</h4>
<p>LEAN provides more than 100 pre-built technical indicators and candlestick patterns</p>
</div>
</a>
<a class="internal-link" href="/docs/v2/writing-algorithms/optimization/parameters">
<div class="internal-link-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="28" height="23.666" viewBox="0 0 28 23.666">
<path id="Union_7" data-name="Union 7" d="M2822.667-3170.334v-5.067h-2.333a1,1,0,0,1-1-1,1,1,0,0,1,1-1H2827a1,1,0,0,1,1,1,1,1,0,0,1-1,1h-2.333v5.067a1,1,0,0,1-1,1A1,1,0,0,1,2822.667-3170.334Zm-9.667,0v-10a1,1,0,0,1,1-1,1,1,0,0,1,1,1v10a1,1,0,0,1-1,1A1,1,0,0,1,2813-3170.334Zm-9.666,0v-6.8H2801a1,1,0,0,1-1-1,1,1,0,0,1,1-1h6.667a1,1,0,0,1,1,1,1,1,0,0,1-1,1h-2.334v6.8a1,1,0,0,1-1,1A1,1,0,0,1,2803.333-3170.334Zm19.333-10.833V-3192a1,1,0,0,1,1-1,1,1,0,0,1,1,1v10.833a1,1,0,0,1-1,1A1,1,0,0,1,2822.667-3181.167Zm-19.333-2.5V-3192a1,1,0,0,1,1-1,1,1,0,0,1,1,1v8.334a1,1,0,0,1-1,1A1,1,0,0,1,2803.333-3183.666Zm7.333-1.266a1,1,0,0,1-1-1,1,1,0,0,1,1-1H2813V-3192a1,1,0,0,1,1-1,1,1,0,0,1,1,1v5.067h2.333a1,1,0,0,1,1,1,1,1,0,0,1-1,1Z" transform="translate(-2800 3193)" fill="#8f9ca3"/>
</svg>
</div>
<div class="internal-link-content">
<h4>Optimization</h4>
<p>Find the optimal parameter values for your strategy</p>
</div>
</a>
<a class="internal-link" href="/docs/v2/writing-algorithms/object-store">
<div class="internal-link-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="30.806" height="34" viewBox="0 0 30.806 34"><g transform="translate(-1371.356 -1290.435)"><g transform="translate(1372.356 1291.435)"><path d="M17.4,35a4.206,4.206,0,0,1-2.1-.563L4.1,28.04A4.215,4.215,0,0,1,2,24.4V11.6A4.213,4.213,0,0,1,4.1,7.966l11.206-6.4a4.2,4.2,0,0,1,4.2,0l11.2,6.4a4.215,4.215,0,0,1,2.1,3.636V24.4a4.213,4.213,0,0,1-2.1,3.635L19.5,34.442A4.2,4.2,0,0,1,17.4,35Zm0-32a2.2,2.2,0,0,0-1.1.295L5.1,9.7A2.205,2.205,0,0,0,4,11.6V24.4a2.207,2.207,0,0,0,1.1,1.9l11.2,6.4a2.2,2.2,0,0,0,2.2,0l11.206-6.4a2.205,2.205,0,0,0,1.1-1.9V11.6a2.207,2.207,0,0,0-1.1-1.9l-11.2-6.4A2.208,2.208,0,0,0,17.4,3Z" transform="translate(-3 -2.002)" fill="#8f9ca3"/></g><g transform="translate(1378.809 1298.567)"><path d="M10.95,20.666A2.771,2.771,0,0,1,9.567,20.3l-6.18-3.531A2.777,2.777,0,0,1,2,14.368V7.3A2.775,2.775,0,0,1,3.383,4.906L9.571,1.371a2.767,2.767,0,0,1,2.763,0L18.514,4.9A2.777,2.777,0,0,1,19.9,7.3v7.068a2.775,2.775,0,0,1-1.383,2.394L12.33,20.3A2.766,2.766,0,0,1,10.95,20.666ZM10.95,3a.768.768,0,0,0-.383.1L4.38,6.64A.767.767,0,0,0,4,7.3v7.066a.769.769,0,0,0,.383.662l6.18,3.531a.776.776,0,0,0,.771,0l6.187-3.536a.767.767,0,0,0,.38-.661V7.3a.769.769,0,0,0-.383-.662l-6.18-3.531A.772.772,0,0,0,10.95,3Z" transform="translate(-3 -2.002)" fill="#8f9ca3"/><path d="M10.982,12.421a1,1,0,0,1-.5-.134L2.769,7.826a1,1,0,0,1,1-1.731l7.211,4.171,7.211-4.171a1,1,0,0,1,1,1.731l-7.712,4.461A1,1,0,0,1,10.982,12.421Z" transform="translate(-3.031 -2.58)" fill="#8f9ca3"/><path d="M12,21.9a1,1,0,0,1-1-1V12a1,1,0,0,1,2,0v8.9A1,1,0,0,1,12,21.9Z" transform="translate(-4.05 -3.168)" fill="#8f9ca3"/></g></g></svg>
</div>
<div class="internal-link-content">
<h4>Object Store</h4>
<p>File system that you can use in your algorithms to save, read, and delete data</p>
</div>
</a>
<a class="internal-link" href="/docs/v2/writing-algorithms/machine-learning/key-concepts">
<div class="internal-link-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="33.997" height="32.582" viewBox="0 0 33.997 32.582">
<g id="Group_370" data-name="Group 370" transform="translate(-1352.002 -1577.209)">
<path id="Path_1507" data-name="Path 1507" d="M4.84,0h0A4.05,4.05,0,0,1,7.665,1.14L9.933,3.326a2.076,2.076,0,0,0,.211.178l4.475,3.288a4.081,4.081,0,0,1,1.394,4.728L14.92,14.39a2.058,2.058,0,0,0,.284,1.985,4.069,4.069,0,0,1-.174,5.126l-.429.494a2.064,2.064,0,0,0-.488,1.073L13.788,25.4a4.08,4.08,0,0,1-2.127,3.037L9,29.848a2.064,2.064,0,0,0-.563.437l-.877.964a4.069,4.069,0,0,1-4.5,1.049l-.477-.188A4.047,4.047,0,0,1,0,28.324V4.311A4.053,4.053,0,0,1,2.849.429L3.621.187A4.064,4.064,0,0,1,4.84,0ZM4.546,30.581A2.074,2.074,0,0,0,6.078,29.9l.876-.964a4.058,4.058,0,0,1,1.107-.859l2.664-1.41a2.075,2.075,0,0,0,1.081-1.544l.324-2.333a4.059,4.059,0,0,1,.96-2.11l.429-.494a2.079,2.079,0,0,0,.089-2.607,4.046,4.046,0,0,1-.558-3.9l1.093-2.87a2.075,2.075,0,0,0-.709-2.4L8.96,5.116a4.082,4.082,0,0,1-.415-.35L6.277,2.579A2.069,2.069,0,0,0,4.22,2.095l-.771.242A2.061,2.061,0,0,0,2,4.311V28.324a2.058,2.058,0,0,0,1.311,1.925l.478.188A2.059,2.059,0,0,0,4.546,30.581Z" transform="translate(1369.72 1577.209)" fill="#8c9da4"/>
<g id="Group_363" data-name="Group 363" transform="translate(1373.93 1591.715)">
<path id="Path_1509" data-name="Path 1509" d="M26.619,97.612a2.785,2.785,0,1,1-2.785,2.785A2.788,2.788,0,0,1,26.619,97.612Zm0,3.57a.785.785,0,1,0-.785-.785A.786.786,0,0,0,26.619,101.182Z" transform="translate(-24.834 -98.612)" fill="#8c9da4"/>
<path id="Line_212" data-name="Line 212" d="M7.06,1H0V-1H7.06Z" transform="translate(2.529 1.683)" fill="#8c9da4"/>
</g>
<g id="Group_364" data-name="Group 364" transform="translate(1380.31 1589.038) rotate(180)">
<path id="Path_1509-2" data-name="Path 1509" d="M1.785-1A2.785,2.785,0,1,1-1,1.785,2.788,2.788,0,0,1,1.785-1Zm0,3.57A.785.785,0,1,0,1,1.785.786.786,0,0,0,1.785,2.57Z" transform="translate(0 0)" fill="#8c9da4"/>
<path id="Line_212-2" data-name="Line 212" d="M7.06,1H0V-1H7.06Z" transform="translate(2.529 1.683)" fill="#8c9da4"/>
</g>
<g id="Group_365" data-name="Group 365" transform="translate(1380.31 1601.532) rotate(180)">
<path id="Path_1509-3" data-name="Path 1509" d="M1.785-1A2.785,2.785,0,1,1-1,1.785,2.788,2.788,0,0,1,1.785-1Zm0,3.57A.785.785,0,1,0,1,1.785.786.786,0,0,0,1.785,2.57Z" transform="translate(0 0)" fill="#8c9da4"/>
<path id="Line_212-3" data-name="Line 212" d="M7.06,1H0V-1H7.06Z" transform="translate(2.529 1.683)" fill="#8c9da4"/>
</g>
<g id="Group_367" data-name="Group 367" transform="translate(1367.28 1608.791) rotate(180)">
<path id="Path_1507-2" data-name="Path 1507" d="M3.841-1A4.05,4.05,0,0,1,6.665.14L8.933,2.327a2.075,2.075,0,0,0,.211.178l4.475,3.288a4.081,4.081,0,0,1,1.394,4.728l-1.093,2.87a2.058,2.058,0,0,0,.284,1.985,4.069,4.069,0,0,1-.174,5.126L13.6,21a2.064,2.064,0,0,0-.488,1.073L12.788,24.4a4.08,4.08,0,0,1-2.127,3.037L8,28.849a2.064,2.064,0,0,0-.563.437l-.877.964a4.069,4.069,0,0,1-4.5,1.049l-.477-.188A4.047,4.047,0,0,1-1,27.324V3.312A4.053,4.053,0,0,1,1.849-.57l.772-.242A4.063,4.063,0,0,1,3.841-1ZM3.546,29.582A2.074,2.074,0,0,0,5.078,28.9l.876-.964a4.058,4.058,0,0,1,1.107-.859l2.664-1.41a2.075,2.075,0,0,0,1.081-1.544l.324-2.333a4.059,4.059,0,0,1,.96-2.11l.429-.494a2.079,2.079,0,0,0,.089-2.607,4.046,4.046,0,0,1-.558-3.9l1.093-2.87a2.075,2.075,0,0,0-.709-2.4L7.96,4.117a4.083,4.083,0,0,1-.415-.35L5.277,1.58A2.069,2.069,0,0,0,3.22,1.1l-.772.242A2.061,2.061,0,0,0,1,3.312V27.324A2.058,2.058,0,0,0,2.311,29.25l.478.188A2.059,2.059,0,0,0,3.546,29.582Z" transform="translate(0 0)" fill="#8c9da4"/>
<g id="Group_363-2" data-name="Group 363" transform="translate(3.209 13.506)">
<path id="Path_1509-4" data-name="Path 1509" d="M1.785-1A2.785,2.785,0,1,1-1,1.785,2.788,2.788,0,0,1,1.785-1Zm0,3.57A.785.785,0,1,0,1,1.785.786.786,0,0,0,1.785,2.57Z" transform="translate(0 0)" fill="#8c9da4"/>
<path id="Line_212-4" data-name="Line 212" d="M7.06,1H0V-1H7.06Z" transform="translate(2.529 1.683)" fill="#8c9da4"/>
</g>
<g id="Group_364-2" data-name="Group 364" transform="translate(9.589 10.828) rotate(180)">
<path id="Path_1509-5" data-name="Path 1509" d="M1.785-1A2.785,2.785,0,1,1-1,1.785,2.788,2.788,0,0,1,1.785-1Zm0,3.57A.785.785,0,1,0,1,1.785.786.786,0,0,0,1.785,2.57Z" transform="translate(0 0)" fill="#8c9da4"/>
<path id="Line_212-5" data-name="Line 212" d="M7.06,1H0V-1H7.06Z" transform="translate(2.529 1.683)" fill="#8c9da4"/>
</g>
<g id="Group_365-2" data-name="Group 365" transform="translate(9.589 23.323) rotate(180)">
<path id="Path_1509-6" data-name="Path 1509" d="M1.785-1A2.785,2.785,0,1,1-1,1.785,2.788,2.788,0,0,1,1.785-1Zm0,3.57A.785.785,0,1,0,1,1.785.786.786,0,0,0,1.785,2.57Z" transform="translate(0 0)" fill="#8c9da4"/>
<path id="Line_212-6" data-name="Line 212" d="M7.06,1H0V-1H7.06Z" transform="translate(2.529 1.683)" fill="#8c9da4"/>
</g>
</g>
</g>
</svg>
</div>
<div class="internal-link-content">
<h4>Machine Learning</h4>
<p>Use machine learning to generate trading signals</p>
</div>
</a>
<a class="internal-link" href="/docs/v2/writing-algorithms/algorithm-framework/overview">
<div class="internal-link-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="42" height="42" viewBox="0 0 42 42"><g transform="translate(-716.5 -1702)"><g transform="translate(727.438 1713.375)"><path d="M2.625-1A3.625,3.625,0,1,1-1,2.625,3.629,3.629,0,0,1,2.625-1Zm0,5.25A1.625,1.625,0,1,0,1,2.625,1.627,1.627,0,0,0,2.625,4.25Z" transform="translate(7 7)" fill="#8f9ca3"/><path d="M10.695,21.25a2.753,2.753,0,0,1-2.75-2.75v-.064a.441.441,0,0,0-.29-.4L7.6,18.015a.444.444,0,0,0-.487.086l-.048.048a2.751,2.751,0,1,1-3.89-3.891l.047-.047a.442.442,0,0,0,.086-.487l0-.01a.444.444,0,0,0-.406-.269H2.75a2.75,2.75,0,1,1,0-5.5h.064a.441.441,0,0,0,.4-.29q.011-.03.024-.059a.442.442,0,0,0-.086-.487L3.1,7.062a2.751,2.751,0,1,1,3.891-3.89l.047.047a.444.444,0,0,0,.487.086A1,1,0,0,1,7.7,3.247a.444.444,0,0,0,.176-.352V2.75a2.75,2.75,0,0,1,5.5,0v.079a.442.442,0,0,0,.269.4l.01,0a.444.444,0,0,0,.487-.086l.048-.048a2.751,2.751,0,1,1,3.89,3.891l-.047.047a.442.442,0,0,0-.086.487A1,1,0,0,1,18,7.7a.444.444,0,0,0,.352.176H18.5a2.75,2.75,0,0,1,0,5.5h-.079a.442.442,0,0,0-.4.269l0,.01a.442.442,0,0,0,.086.487l.048.048a2.751,2.751,0,1,1-3.891,3.89l-.047-.047a.444.444,0,0,0-.487-.086l-.01,0a.444.444,0,0,0-.269.406V18.5A2.753,2.753,0,0,1,10.695,21.25Zm-2.32-5.078A2.43,2.43,0,0,1,9.945,18.4q0,.012,0,.023V18.5a.75.75,0,0,0,1.5,0v-.149A2.454,2.454,0,0,1,15.612,16.6l.008.008.052.052A.751.751,0,1,0,16.735,15.6l-.053-.053-.008-.008a2.455,2.455,0,0,1,1.743-4.167H18.5a.75.75,0,0,0,0-1.5h-.149a2.444,2.444,0,0,1-2.24-1.481,1,1,0,0,1-.07-.25A2.431,2.431,0,0,1,16.6,5.638l.008-.008.052-.053A.751.751,0,1,0,15.6,4.515l-.053.053-.008.008a2.455,2.455,0,0,1-4.167-1.743V2.75a.75.75,0,0,0-1.5,0V2.9a2.444,2.444,0,0,1-1.481,2.24,1,1,0,0,1-.25.071,2.444,2.444,0,0,1-2.505-.564L5.63,4.638l-.053-.053A.751.751,0,1,0,4.515,5.648l.053.053.008.008a2.432,2.432,0,0,1,.5,2.666,2.43,2.43,0,0,1-2.225,1.57h-.1a.75.75,0,0,0,0,1.5H2.9a2.455,2.455,0,0,1,1.747,4.167l-.008.008-.053.052a.751.751,0,1,0,1.062,1.062l.053-.053.008-.008a2.444,2.444,0,0,1,2.666-.5Z" transform="translate(-1 -1)" fill="#8f9ca3"/></g><g transform="translate(735.313 1702)"><path d="M1,4.375H-1V0H1Z" transform="translate(2.188 3.938)" fill="#8f9ca3"/><path d="M2.188,0A2.188,2.188,0,1,1,0,2.188,2.188,2.188,0,0,1,2.188,0Z" fill="#8f9ca3"/></g><g transform="translate(739.688 1744) rotate(180)"><path d="M1,4.375H-1V0H1Z" transform="translate(2.188 3.938)" fill="#8f9ca3"/><path d="M2.188,0A2.188,2.188,0,1,1,0,2.188,2.188,2.188,0,0,1,2.188,0Z" fill="#8f9ca3"/></g><g transform="translate(716.5 1725.188) rotate(-90)"><path d="M1,4.375H-1V0H1Z" transform="translate(2.188 3.938)" fill="#8f9ca3"/><path d="M2.188,0A2.188,2.188,0,1,1,0,2.188,2.188,2.188,0,0,1,2.188,0Z" fill="#8f9ca3"/></g><g transform="translate(758.5 1720.813) rotate(90)"><path d="M1,4.375H-1V0H1Z" transform="translate(2.188 3.938)" fill="#8f9ca3"/><path d="M2.188,0A2.188,2.188,0,1,1,0,2.188,2.188,2.188,0,0,1,2.188,0Z" fill="#8f9ca3"/></g><g transform="translate(724.198 1739.396) rotate(-135)"><path d="M1,4.375H-1V0H1Z" transform="translate(2.188 3.938)" fill="#8f9ca3"/><path d="M2.188,0A2.188,2.188,0,1,1,0,2.188,2.188,2.188,0,0,1,2.188,0Z" transform="translate(0 0)" fill="#8f9ca3"/></g><g transform="translate(750.802 1706.604) rotate(45)"><path d="M1,4.375H-1V0H1Z" transform="translate(2.188 3.938)" fill="#8f9ca3"/><path d="M2.188,0A2.188,2.188,0,1,1,0,2.188,2.188,2.188,0,0,1,2.188,0Z" transform="translate(0 0)" fill="#8f9ca3"/></g><g transform="translate(721.104 1709.698) rotate(-45)"><path d="M1,4.375H-1V0H1Z" transform="translate(2.188 3.938)" fill="#8f9ca3"/><path d="M2.188,0A2.188,2.188,0,1,1,0,2.188,2.188,2.188,0,0,1,2.188,0Z" transform="translate(0 0)" fill="#8f9ca3"/></g><g transform="translate(753.896 1736.302) rotate(135)"><path d="M1,4.375H-1V0H1Z" transform="translate(2.188 3.938)" fill="#8f9ca3"/><path d="M2.188,0A2.188,2.188,0,1,1,0,2.188,2.188,2.188,0,0,1,2.188,0Z" transform="translate(0 0)" fill="#8f9ca3"/></g></g></svg>
</div>
<div class="internal-link-content">
<h4>Algorithm Framework</h4>
<p>Use pluggable algorithm modules to create your algorithm</p>
</div>
</a>
<a class="internal-link" href="/docs/v2/writing-algorithms/charting">
<div class="internal-link-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="33" height="33" viewBox="0 0 33 33"><g transform="translate(-427.5 -436.5)"><path d="M444,470.257a16.5,16.5,0,0,1-12.92-26.764,16.57,16.57,0,0,1,8.993-5.764l.474,1.943A14.484,14.484,0,0,0,429.5,453.757a14.5,14.5,0,0,0,23.519,11.355,14.561,14.561,0,0,0,5.066-7.9l1.943.474A16.483,16.483,0,0,1,444,470.257Z" transform="translate(0 -0.757)" fill="#8f9ca3"/><path d="M487,454H469.5V436.5h1A16.5,16.5,0,0,1,487,453Zm-15.5-2h13.466A14.5,14.5,0,0,0,471.5,438.534Z" transform="translate(-26.5)" fill="#8f9ca3"/><path d="M487,454H469.5V436.5h1A16.5,16.5,0,0,1,487,453Zm-15.5-2h13.466A14.5,14.5,0,0,0,471.5,438.534Z" transform="translate(-26.5)" fill="#8f9ca3"/><path d="M487,454H469.5V436.5h1A16.5,16.5,0,0,1,487,453Zm-15.5-2h13.466A14.5,14.5,0,0,0,471.5,438.534Z" transform="translate(-26.5)" fill="#8f9ca3"/></g></svg>
</div>
<div class="internal-link-content">
<h4>Charting</h4>
<p>Add custom charting to your algorithm</p>
</div>
</a>
<a class="internal-link" href="/docs/v2/writing-algorithms/logging">
<div class="internal-link-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="34.216" height="34.946" viewBox="0 0 34.216 34.946"><g transform="translate(-882.296 -1547.212)"><path d="M11.5,2A9.511,9.511,0,0,0,2,11.5v9a9.5,9.5,0,0,0,19,0v-9A9.511,9.511,0,0,0,11.5,2m0-2A11.5,11.5,0,0,1,23,11.5v9a11.5,11.5,0,0,1-23,0v-9A11.5,11.5,0,0,1,11.5,0Z" transform="translate(887.404 1550.159)" fill="#8f9ca3"/><path d="M22.559,1H0V-1H22.559Z" transform="translate(887.904 1563.659)" fill="#8f9ca3"/><path d="M2,0A2,2,0,1,1,0,2,2,2,0,0,1,2,0Z" transform="translate(891.404 1566.159)" fill="#8f9ca3"/><path d="M2,0A2,2,0,1,1,0,2,2,2,0,0,1,2,0Z" transform="translate(902.404 1566.159)" fill="#8f9ca3"/><path d="M1,17.389H-1V0H1Z" transform="translate(898.904 1563.659)" fill="#8f9ca3"/><path d="M2,0A2,2,0,1,1,0,2,2,2,0,0,1,2,0Z" transform="translate(891.404 1572.159)" fill="#8f9ca3"/><path d="M2,0A2,2,0,1,1,0,2,2,2,0,0,1,2,0Z" transform="translate(902.404 1572.159)" fill="#8f9ca3"/><path d="M6832.132,2696.114l-1.24-1.569,5.988-4.735,1.24,1.569Z" transform="translate(-5948.596 -1118.393)" fill="#8f9ca3"/><path d="M6832.132,2696.114l-1.24-1.569,5.988-4.735,1.24,1.569Z" transform="translate(-5948.596 -1127.128)" fill="#8f9ca3"/><path d="M6836.88,2696.114l-5.988-4.735,1.24-1.569,5.988,4.735Z" transform="translate(-5922.608 -1118.393)" fill="#8f9ca3"/><path d="M6836.88,2696.114l-5.988-4.735,1.24-1.569,5.988,4.735Z" transform="translate(-5921.608 -1127.128)" fill="#8f9ca3"/><path d="M6975.465,2833.21h-2v-3.1l2.57-2.011,1.232,1.575-1.8,1.411Z" transform="translate(-6070.061 -1280.889)" fill="#8f9ca3"/><path d="M6977.65,2833.21h-2v-2.123l-1.8-1.411,1.232-1.575,2.57,2.011Z" transform="translate(-6082.246 -1280.889)" fill="#8f9ca3"/></g></svg>
</div>
<div class="internal-link-content">
<h4>Logging</h4>
<p>Log important information from your algorithm to further analysis</p>
</div>
</a>
<a class="internal-link" href="/docs/v2/writing-algorithms/statistics">
<div class="internal-link-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="30.241" height="32.81" viewBox="0 0 30.241 32.81">
<g id="Group_376" data-name="Group 376" transform="translate(-1509.878 -1920.979)">
<g id="Group_372" data-name="Group 372" transform="translate(1509.878 1920.979)">
<path id="Path_1509" data-name="Path 1509" d="M535.09,335.619a1.067,1.067,0,0,1,1.067,1.074l-.086,12.807a1.067,1.067,0,0,1-.44.856l-10.3,7.482a1.067,1.067,0,0,1-1.49-.236,13.514,13.514,0,0,1-1.975-12.467,1.071,1.071,0,0,1,.114-.242A13.7,13.7,0,0,1,535.09,335.619Zm-1.149,13.328.074-11.149a11.534,11.534,0,0,0-10.092,8.011,1.078,1.078,0,0,1-.1.214,11.267,11.267,0,0,0,1.151,9.436Z" transform="translate(-521.148 -333.785)" fill="#8f9ca3"/>
<path id="Path_1510" data-name="Path 1510" d="M548.157,415.8h12.835a1.067,1.067,0,0,1,1.067,1.067,13.9,13.9,0,0,1-13.892,13.9,13.884,13.884,0,0,1-11.257-5.732,1.067,1.067,0,0,1,.236-1.49L547.53,416A1.067,1.067,0,0,1,548.157,415.8Zm11.726,2.134H548.5l-9.2,6.686a11.6,11.6,0,0,0,3.6,2.779,11.876,11.876,0,0,0,5.268,1.238,11.679,11.679,0,0,0,6.907-2.248A11.294,11.294,0,0,0,559.883,417.933Z" transform="translate(-531.817 -397.959)" fill="#8f9ca3"/>
<path id="Rectangle_1179" data-name="Rectangle 1179" d="M.067-1H2.89A1.067,1.067,0,0,1,3.957.067V12.98A1.067,1.067,0,0,1,2.89,14.046H.067A1.067,1.067,0,0,1-1,12.98V.067A1.067,1.067,0,0,1,.067-1ZM1.824,1.134h-.69V11.913h.69Z" transform="translate(19.201 1)" fill="#8f9ca3"/>
<path id="Rectangle_1181" data-name="Rectangle 1181" d="M.067-1H2.89A1.067,1.067,0,0,1,3.957.067V8.3A1.067,1.067,0,0,1,2.89,9.372H.067A1.067,1.067,0,0,1-1,8.3V.067A1.067,1.067,0,0,1,.067-1ZM1.824,1.134h-.69v6.1h.69Z" transform="translate(25.217 5.675)" fill="#8f9ca3"/>
</g>
</g>
</svg>
</div>
<div class="internal-link-content">
<h4>Statistics</h4>
<p>Tracks all the statistics of your algorithm</p>
</div>
</a>
<a class="internal-link" href="/docs/v2/writing-algorithms/live-trading">
<div class="internal-link-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="21.541" height="28.685" viewBox="0 0 21.541 28.685"><path d="M12.144,1.484,14,2.09l-.9,9.971H22.77L11.856,30.169,10,29.562l.9-9.971H1.23ZM19.23,14.061H10.906l.707-7.822L4.77,17.591h8.324l-.707,7.822Z" transform="translate(-1.23 -1.484)" fill="#8f9ca3"/></svg>
</div>
<div class="internal-link-content">
<h4>Live Trading</h4>
<p>Deploy algorithm that trade with real-time data</p>
</div>
</a>
<a class="internal-link" href="/docs/v2/writing-algorithms/strategy-library">
<div class="internal-link-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="34" height="25.601" viewBox="0 0 34 25.601">
<g id="Group_350" data-name="Group 350" transform="translate(-1551 -1675.087)">
<path id="Union_2" data-name="Union 2" d="M2839-3157.4v-19.2h2.6v-4.488h21.679l1.912-1.912H2873v25.6Zm2-2h30V-3181h-4.986l-6.4,6.4H2841Zm17.785-17.2,2.489-2.488H2843.6v2.488Z" transform="translate(-1288 4858.088)" fill="#8f9ca3"/>
<circle id="Ellipse_106" data-name="Ellipse 106" cx="4" cy="4" r="4" transform="translate(1571 1687.82)" fill="rgba(0,0,0,0)"/>
<path id="Ellipse_106_-_Outline" data-name="Ellipse 106 - Outline" d="M4-1A5,5,0,1,1-1,4,5.006,5.006,0,0,1,4-1ZM4,7A3,3,0,1,0,1,4,3,3,0,0,0,4,7Z" transform="translate(1571 1687.82)" fill="#8f9ca3"/>
<path id="Polygon_52_-_Outline" data-name="Polygon 52 - Outline" d="M5.5,3.774,3.609,6.8H7.391L5.5,3.774M5.5,0,11,8.8H0Z" transform="translate(1558 1687.42)" fill="#8f9ca3"/>
</g>
</svg>
</div>
<div class="internal-link-content">
<h4>Strategy Library</h4>
<p>Collection of tutorials written by the QuantConnect team and community members.</p>
</div>
</a>
<a class="internal-link" href="/docs/v2/writing-algorithms/api-reference">
<div class="internal-link-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="30" viewBox="0 0 24 30"><g transform="translate(-668 -1162)"><path d="M2,2V28H22V2H2M2,0H22a2,2,0,0,1,2,2V28a2,2,0,0,1-2,2H2a2,2,0,0,1-2-2V2A2,2,0,0,1,2,0Z" transform="translate(668 1162)" fill="#8f9ca3"/><path d="M0,0H2V8H0Z" transform="translate(681 1180)" fill="#8f9ca3"/><path d="M.375,3.222h2v5h-2Z" transform="translate(676.625 1179.778)" fill="#8f9ca3"/><path d="M.125-1.778h2v10h-2Z" transform="translate(684.875 1179.778)" fill="#8f9ca3"/><path d="M4682.141,2147.5h-12v-2h12Z" transform="translate(-3994.641 -979)" fill="#8f9ca3"/><path d="M4684.589,2147.5h-15v-2h15Z" transform="translate(-3997.089 -976)" fill="#8f9ca3"/><path d="M4684.589,2147.5h-15v-2h15Z" transform="translate(-3997.089 -973)" fill="#8f9ca3"/></g></svg>
</div>
<div class="internal-link-content">
<h4>API Reference</h4>
<p>QCAlgorithm API Reference</p>
</div>
</a>
<a class="internal-link" href="/docs/v2/writing-algorithms/migrations/zipline">
<div class="internal-link-icon">
<svg xmlns="http://www.w3.org/2000/svg" width="30.402" height="34.999" viewBox="0 0 30.402 34.999">
<path id="Union_3" data-name="Union 3" d="M2854.7-3152.275h-9.553a6.155,6.155,0,0,1-6.149-6.148v-16.45h2v16.45a4.152,4.152,0,0,0,4.148,4.148h9.553V-3159l9,5.5-9,5.5Zm12.7-4.7v-15.265a4.443,4.443,0,0,0-4.439-4.438h-8.443l-.192,4.012-9.2-4.74,9.692-5.6-.207,4.324h8.347a6.445,6.445,0,0,1,6.438,6.438v15.265Z" transform="translate(-2839 3183)" fill="#8f9ca3"/>
</svg>
</div>
<div class="internal-link-content">
<h4>Migrations</h4>
<p>Transition from other trading engines to LEAN</p>
</div>
</a>
</div>