{ "cells": [ { "cell_type": "code", "execution_count": null, "metadata": { "dotnet_interactive": { "language": "csharp" }, "vscode": { "languageId": "dotnet-interactive.csharp" } }, "outputs": [ { "data": { "text/html": [ "
Installed Packages
" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/markdown": [ "Loading extensions from `Plotly.NET.Interactive.dll`" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "// This is .NET Interactive Notebook. It can run in VS.Code with .NET interactive extension installed\n", "\n", "#r \"nuget: Plotly.NET, 2.0.0\"\n", "#r \"nuget: Plotly.NET.Interactive, 2.0.0\"\n", "#r \"nuget: QuanTAlib\"\n", "\n", "using Plotly.NET;\n", "using Plotly.NET.LayoutObjects;\n", "using QuanTAlib;" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "dotnet_interactive": { "language": "csharp" }, "vscode": { "languageId": "dotnet-interactive.csharp" } }, "outputs": [ { "data": { "text/html": [ "
380
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "// defining the MACD model through clasess that connect to each other with Events\n", "\n", "RND_Feed tsla = new(380);\n", "TSeries close = tsla.Close; // close will get data from YAHOO tsla feed\n", "EMA_Series slow = new(close,26); // slow gets data from slow through pub-sub eventing\n", "EMA_Series fast = new(close,12); // fast gets data from slow (via eventing)\n", "SUB_Series macd = new(fast,slow); // macd is a SUBtraction of fast-slow\n", "EMA_Series signal = new(macd,9); // signal is EMA of macd\n", "SUB_Series histogram = new(macd, signal); // histogran is SUBtraction macd-signal\n", "\n", "slow.Count" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "dotnet_interactive": { "language": "csharp" }, "vscode": { "languageId": "dotnet-interactive.csharp" } }, "outputs": [ { "data": { "text/html": [ "
indexvalue
0
99.6
1
100.93
2
100.36
3
96.83
4
95.39
5
96.34
6
97.6
7
98.7
8
100.11
9
101.38
10
101.09
11
100.31
12
97.19
13
96.13
14
93.34
15
91.46
16
91.65
17
91.63
18
90.39
19
91.69
(360 more)
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "tsla.Open.v" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "dotnet_interactive": { "language": "csharp" }, "vscode": { "languageId": "dotnet-interactive.csharp" } }, "outputs": [ { "data": { "text/html": [ "\r\n", "
\r\n", "
\r\n", "\r\n", "\r\n", " \r\n", "
(tsla.Open.v, tsla.High.v, tsla.Low.v, tsla.Close.v, tsla.Open.t, \"candles\");\n", "var ch1 = Chart2D.Chart.Line(macd.t,macd.v,false,\"macd\").WithLineStyle(Width: 2, Color: Color.fromString(\"red\"));\n", "var ch2 = Chart2D.Chart.Line(signal.t,signal.v,false,\"signal\").WithLineStyle(Width: 1.5, Color: Color.fromString(\"green\"));\n", "//GenericChart.GenericChart hist = Chart2D.Chart.Column(histogram.t,histogram.v).WithLineStyle(Width: 1.5, Color: Color.fromString(\"green\"));\n", "\n", "var chart = Chart.Combine(new []{candles,ch1,ch2}).WithSize(1200,400).WithMargin(Margin.init(1,1,60,1,1,false)).WithTitle(\"MACD using EMA\");\n", "\n", "chart" ] } ], "metadata": { "kernelspec": { "display_name": ".NET (C#)", "language": "C#", "name": ".net-csharp" }, "language_info": { "file_extension": ".cs", "mimetype": "text/x-csharp", "name": "C#", "pygments_lexer": "csharp", "version": "9.0" }, "orig_nbformat": 4 }, "nbformat": 4, "nbformat_minor": 2 }