init
This commit is contained in:
commit
0bb4c5a486
BIN
.vs/ProjectEvaluation/signalstest.metadata.v7.bin
Normal file
BIN
.vs/ProjectEvaluation/signalstest.metadata.v7.bin
Normal file
Binary file not shown.
BIN
.vs/ProjectEvaluation/signalstest.projects.v7.bin
Normal file
BIN
.vs/ProjectEvaluation/signalstest.projects.v7.bin
Normal file
Binary file not shown.
BIN
.vs/SignalsTest/DesignTimeBuild/.dtbcache.v2
Normal file
BIN
.vs/SignalsTest/DesignTimeBuild/.dtbcache.v2
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
.vs/SignalsTest/v17/.futdcache.v2
Normal file
BIN
.vs/SignalsTest/v17/.futdcache.v2
Normal file
Binary file not shown.
BIN
.vs/SignalsTest/v17/.suo
Normal file
BIN
.vs/SignalsTest/v17/.suo
Normal file
Binary file not shown.
25
SignalsTest.sln
Normal file
25
SignalsTest.sln
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio Version 17
|
||||
VisualStudioVersion = 17.7.34003.232
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SignalsTest", "SignalsTest\SignalsTest.csproj", "{7FAC8F77-0259-4D47-9E4A-8870188E9165}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
Release|Any CPU = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{7FAC8F77-0259-4D47-9E4A-8870188E9165}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{7FAC8F77-0259-4D47-9E4A-8870188E9165}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{7FAC8F77-0259-4D47-9E4A-8870188E9165}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{7FAC8F77-0259-4D47-9E4A-8870188E9165}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {32648056-9950-47C0-99F2-01FEE6B16ADC}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
24
SignalsTest/Brian.cs
Normal file
24
SignalsTest/Brian.cs
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
using BinanceExchange.API.Client;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace SignalsTest
|
||||
{
|
||||
public class Brian
|
||||
{
|
||||
private static BinanceClient m_client;
|
||||
|
||||
public static BinanceClient Client { get { if(m_client == null)
|
||||
{
|
||||
m_client = new BinanceClient(new ClientConfiguration()
|
||||
{
|
||||
ApiKey = "7VWqa8Ojm1BMn620RXaPsFXlEhhEorFB4YDMdvl9eRpH64wXgs4GBo35RmgTTK8f",
|
||||
SecretKey = "Q3TPZruLAVeLrm4KpjhboZ6o5a54NMTHINyTuCNQHpCi4qQyZhirisFDL6qBnHIZ",
|
||||
});
|
||||
} return m_client;
|
||||
} }
|
||||
}
|
||||
}
|
||||
82
SignalsTest/CoinWatch.cs
Normal file
82
SignalsTest/CoinWatch.cs
Normal file
|
|
@ -0,0 +1,82 @@
|
|||
using BinanceExchange.API.Client;
|
||||
using BinanceExchange.API.Enums;
|
||||
using BinanceExchange.API.Models.Request;
|
||||
using BinanceExchange.API.Models.Response;
|
||||
using BinanceExchange.API.Models.WebSocket;
|
||||
using BinanceExchange.API.Websockets;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using static System.Runtime.InteropServices.JavaScript.JSType;
|
||||
|
||||
namespace SignalsTest
|
||||
{
|
||||
|
||||
|
||||
public class CoinWatch
|
||||
{
|
||||
public string pair;
|
||||
public KlineInterval interval;
|
||||
public List<KlineCandleStickResponse> candles=new List<KlineCandleStickResponse>();
|
||||
public event EventHandler<BinanceTradeData> PriceUpdated;
|
||||
|
||||
public CoinWatch(string pair)
|
||||
{
|
||||
this.pair = pair;
|
||||
Init();
|
||||
}
|
||||
|
||||
void Init()
|
||||
{
|
||||
// InitLivestream();
|
||||
KeepUpdatingCandles();
|
||||
// TestCallbacks();
|
||||
}
|
||||
|
||||
async void TestCallbacks()
|
||||
{
|
||||
while (true)
|
||||
{
|
||||
await Task.Delay(1000);
|
||||
PriceUpdated?.Invoke(this, new BinanceTradeData() { BestAskPrice=0 });
|
||||
}
|
||||
}
|
||||
|
||||
async Task UpdateCandles()
|
||||
{
|
||||
GetKlinesCandlesticksRequest req = new GetKlinesCandlesticksRequest();
|
||||
req.Interval = BinanceExchange.API.Enums.KlineInterval.FifteenMinutes;
|
||||
req.Symbol = pair;
|
||||
req.EndTime = DateTime.Now;
|
||||
req.Limit = 100;
|
||||
|
||||
candles = await Brian.Client.GetKlinesCandlesticks(req);
|
||||
int[] mas = new int[] { 7, 12, 25 };
|
||||
TAReport report = TAReport.Generate(candles, candles.Count-1, mas, mas);
|
||||
await Messenger.instance.SendMessage(report.toJson());
|
||||
Console.WriteLine("Updated candles, last candle closed at " + candles[candles.Count - 1].CloseTime);
|
||||
}
|
||||
|
||||
async void KeepUpdatingCandles()
|
||||
{
|
||||
UpdateCandles();
|
||||
while(true)
|
||||
{
|
||||
await Task.Delay(60000);
|
||||
if (DateTime.Now.Minute % Utils.GetMinutesForInterval(interval) == 0) { UpdateCandles(); }
|
||||
}
|
||||
}
|
||||
|
||||
void InitLivestream()
|
||||
{
|
||||
var manualWebsocket = new InstanceBinanceWebSocketClient(Brian.Client);
|
||||
var socketId = manualWebsocket.ConnectToIndividualSymbolTickerWebSocket(pair, data =>
|
||||
{
|
||||
candles[candles.Count - 1].Close = data.BestAskPrice;
|
||||
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
84
SignalsTest/Form1.Designer.cs
generated
Normal file
84
SignalsTest/Form1.Designer.cs
generated
Normal file
|
|
@ -0,0 +1,84 @@
|
|||
namespace SignalsTest
|
||||
{
|
||||
partial class Form1
|
||||
{
|
||||
/// <summary>
|
||||
/// Required designer variable.
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// Clean up any resources being used.
|
||||
/// </summary>
|
||||
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region Windows Form Designer generated code
|
||||
|
||||
/// <summary>
|
||||
/// Required method for Designer support - do not modify
|
||||
/// the contents of this method with the code editor.
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
button1 = new Button();
|
||||
textBox1 = new TextBox();
|
||||
listBox1 = new ListBox();
|
||||
SuspendLayout();
|
||||
//
|
||||
// button1
|
||||
//
|
||||
button1.Location = new Point(308, 177);
|
||||
button1.Name = "button1";
|
||||
button1.Size = new Size(75, 23);
|
||||
button1.TabIndex = 0;
|
||||
button1.Text = "Send";
|
||||
button1.UseVisualStyleBackColor = true;
|
||||
button1.Click += button1_Click;
|
||||
//
|
||||
// textBox1
|
||||
//
|
||||
textBox1.Location = new Point(12, 178);
|
||||
textBox1.Name = "textBox1";
|
||||
textBox1.Size = new Size(290, 23);
|
||||
textBox1.TabIndex = 1;
|
||||
textBox1.Text = "@doralockscryptosignals";
|
||||
//
|
||||
// listBox1
|
||||
//
|
||||
listBox1.FormattingEnabled = true;
|
||||
listBox1.ItemHeight = 15;
|
||||
listBox1.Location = new Point(12, 12);
|
||||
listBox1.Name = "listBox1";
|
||||
listBox1.Size = new Size(373, 154);
|
||||
listBox1.TabIndex = 2;
|
||||
//
|
||||
// Form1
|
||||
//
|
||||
AutoScaleDimensions = new SizeF(7F, 15F);
|
||||
AutoScaleMode = AutoScaleMode.Font;
|
||||
ClientSize = new Size(397, 213);
|
||||
Controls.Add(listBox1);
|
||||
Controls.Add(textBox1);
|
||||
Controls.Add(button1);
|
||||
Name = "Form1";
|
||||
Text = "Singklasl";
|
||||
Load += Form1_LoadAsync;
|
||||
ResumeLayout(false);
|
||||
PerformLayout();
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private Button button1;
|
||||
private TextBox textBox1;
|
||||
private ListBox listBox1;
|
||||
}
|
||||
}
|
||||
50
SignalsTest/Form1.cs
Normal file
50
SignalsTest/Form1.cs
Normal file
|
|
@ -0,0 +1,50 @@
|
|||
using BinanceExchange.API.Models.WebSocket;
|
||||
using System.Diagnostics;
|
||||
using System.Runtime.InteropServices;
|
||||
using Telegram.Bot;
|
||||
using Telegram.Bot.Exceptions;
|
||||
using Telegram.Bot.Polling;
|
||||
using Telegram.Bot.Types;
|
||||
using Telegram.Bot.Types.Enums;
|
||||
using Message = Telegram.Bot.Types.Message;
|
||||
|
||||
namespace SignalsTest
|
||||
{
|
||||
public partial class Form1 : Form
|
||||
{
|
||||
[DllImport("kernel32.dll", SetLastError = true)]
|
||||
[return: MarshalAs(UnmanagedType.Bool)]
|
||||
static extern bool AllocConsole();
|
||||
public Form1()
|
||||
{
|
||||
InitializeComponent();
|
||||
AllocConsole();
|
||||
}
|
||||
|
||||
private void Form1_LoadAsync(object sender, EventArgs e)
|
||||
{
|
||||
Log("Initiating messiah");
|
||||
Messenger.instance.SendMessage("Bot Rebooted");
|
||||
Log("Done");
|
||||
Log("Initiating coin watch for BTCUSDT");
|
||||
CoinWatch btcWatch = new CoinWatch("BTCUSDT");
|
||||
btcWatch.PriceUpdated += BtcWatch_OnPriceUpdate;
|
||||
}
|
||||
|
||||
private void BtcWatch_OnPriceUpdate(Object? sender,BinanceTradeData data)
|
||||
{
|
||||
this.Invoke(() => { listBox1.Items.Add(data.BestAskPrice + " : " + data.EventTime); });
|
||||
}
|
||||
|
||||
void Log(string message)
|
||||
{
|
||||
listBox1.Items.Add(message);
|
||||
}
|
||||
|
||||
|
||||
|
||||
private void button1_Click(object sender, EventArgs e)
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
120
SignalsTest/Form1.resx
Normal file
120
SignalsTest/Form1.resx
Normal file
|
|
@ -0,0 +1,120 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
</root>
|
||||
150
SignalsTest/Indicators.cs
Normal file
150
SignalsTest/Indicators.cs
Normal file
|
|
@ -0,0 +1,150 @@
|
|||
using BinanceExchange.API.Models.Response;
|
||||
|
||||
public static class Indicators
|
||||
{
|
||||
|
||||
public static decimal getSMA(List<KlineCandleStickResponse> responses, int curIndex, int interval, int startIndex = 0)
|
||||
{
|
||||
// curIndex = Math.Clamp(curIndex,0, responses.Count);
|
||||
// decimal total = 0;
|
||||
// for(int i=curIndex-interval; i < curIndex; i++){
|
||||
// total += responses[i].Close;
|
||||
// }
|
||||
// // decimal length = (curIndex-startIndex); if(length <= 0){length=1;}
|
||||
// // decimal N = (length / (decimal)interval);
|
||||
// Console.WriteLine($"SMA Cacl ({interval}) : {total}/{interval} = {total/interval}");
|
||||
|
||||
// return total / interval;
|
||||
|
||||
decimal total = 0;
|
||||
for (int x = (curIndex > 1500) ? 1500 : 0; x < interval; x++)
|
||||
{
|
||||
total += (curIndex - x >= 0) ? responses[curIndex - x].Close : (decimal)0;
|
||||
}
|
||||
return total / (decimal)interval;
|
||||
}
|
||||
|
||||
public static decimal getSMA(List<decimal> responses, int curIndex, int interval, int startIndex = 0)
|
||||
{
|
||||
decimal total = 0;
|
||||
for (int x = (curIndex > 1500) ? 1500 : 0; x < interval; x++)
|
||||
{
|
||||
total += (curIndex - x >= 0) ? responses[curIndex - x] : (decimal)0;
|
||||
}
|
||||
return total / (decimal)interval;
|
||||
}
|
||||
|
||||
public static decimal getEMA(List<KlineCandleStickResponse> responses, int curIndex, int startIndex, int periods, decimal? prevEma = null)
|
||||
{
|
||||
if (curIndex < 1) { return 0; }
|
||||
if (startIndex - curIndex > 1500) { return 0; }; if (curIndex >= responses.Count) { return 0; };
|
||||
|
||||
|
||||
// decimal N = (decimal)curIndex / (decimal)periods;
|
||||
|
||||
decimal multiplier = (decimal)2 / ((decimal)(periods + 1));
|
||||
decimal firstHalf = responses[curIndex].Close * multiplier; //First half of the equation
|
||||
decimal secondHalf = getEMA(responses, curIndex - 1, startIndex, periods) * (1 - multiplier); //Second half of the equation
|
||||
// decimal secondHalf = (prevEma ?? getSMA(responses, curIndex-1, periods)) * (1- multiplier); //Second half of the equation
|
||||
|
||||
return firstHalf + secondHalf;
|
||||
}
|
||||
|
||||
public static decimal getEMA(List<decimal> responses, int curIndex, int startIndex, int periods)
|
||||
{
|
||||
if (curIndex < 1) { return 0; }
|
||||
if (startIndex - curIndex > 1500) { return 0; };
|
||||
if (curIndex >= responses.Count) { return 0; };
|
||||
|
||||
// decimal N = (decimal)curIndex / (decimal)periods;
|
||||
|
||||
decimal multiplier = (decimal)2 / ((decimal)(periods + 1));
|
||||
|
||||
decimal firstHalf = responses[curIndex] * multiplier; //First half of the equation
|
||||
decimal secondHalf = getEMA(responses, curIndex - 1, startIndex, periods) * (1 - multiplier); //Second half of the equation
|
||||
// decimal secondHalf = (prevEma ?? getSMA(responses, curIndex-1, periods)) * (1- multiplier); //Second half of the equation
|
||||
|
||||
return firstHalf + secondHalf;
|
||||
}
|
||||
|
||||
public static decimal getMACD(List<KlineCandleStickResponse> responses, int shortPeriod, int longPeriod, int curIndex)
|
||||
{
|
||||
return getEMA(responses, curIndex, curIndex, shortPeriod) - getEMA(responses, curIndex, curIndex, longPeriod);
|
||||
}
|
||||
|
||||
public static decimal getATR(List<KlineCandleStickResponse> responses, int period, int curIndex, decimal[] prevATRs)
|
||||
{
|
||||
if (curIndex <= 0 || curIndex > responses.Count) { return 0; }
|
||||
|
||||
if (curIndex >= responses.Count) { return 0; };
|
||||
|
||||
decimal TR = responses[curIndex].High - responses[curIndex].Low;
|
||||
if (curIndex > 1)
|
||||
{
|
||||
decimal tr2 = responses[curIndex].High - responses[curIndex - 1].Close;
|
||||
decimal tr3 = responses[curIndex].Low - responses[curIndex - 1].Close;
|
||||
if (tr2 > TR)
|
||||
{
|
||||
TR = tr2;
|
||||
}
|
||||
if (tr3 > TR)
|
||||
{
|
||||
TR = tr3;
|
||||
}
|
||||
}
|
||||
|
||||
if (curIndex < period)
|
||||
{
|
||||
//get just the TR
|
||||
return TR;
|
||||
}
|
||||
decimal prevATR = 0;
|
||||
if (prevATRs.Length > 0)
|
||||
{
|
||||
// int start = curIndex - period;
|
||||
// for (int i = start; i < curIndex; i++)
|
||||
// {
|
||||
// prevATR += prevATRs[i];
|
||||
// }
|
||||
|
||||
// prevATR = (prevATR) / (decimal)(curIndex-start);
|
||||
prevATR = prevATRs[curIndex - 1];
|
||||
}
|
||||
decimal ATR = (decimal)((prevATR * (decimal)(period - 1)) + TR) / (decimal)period;
|
||||
return ATR;
|
||||
}
|
||||
|
||||
public static bool didMACDLineCrossSignalLine(decimal[] MACDs, decimal[] Signals, int index, int period = 7, decimal threshold = (decimal)0.1)
|
||||
{
|
||||
int counter = 0;
|
||||
if (index >= MACDs.Length || index >= Signals.Length) { return false; }
|
||||
if (index - period < 0) { return false; };
|
||||
for (int i = index; i > index - period; i--)
|
||||
{
|
||||
if (MACDs[i] < Signals[i])
|
||||
{
|
||||
counter++;
|
||||
}
|
||||
}
|
||||
bool wasMACDUnder = counter > ((float)period / 2f);
|
||||
return wasMACDUnder && MACDs[index] > Signals[index];
|
||||
}
|
||||
|
||||
public static decimal getAvgDiff(List<KlineCandleStickResponse> responses, int i)
|
||||
{
|
||||
decimal avgDiff = 0;
|
||||
|
||||
if (i > 10)
|
||||
{
|
||||
for (int k = 1; k < 6; k++)
|
||||
{
|
||||
avgDiff += responses[i - k].Close;
|
||||
}
|
||||
|
||||
avgDiff = avgDiff / (decimal)5;
|
||||
avgDiff = responses[i].Close - avgDiff;
|
||||
}
|
||||
|
||||
return avgDiff;
|
||||
}
|
||||
}
|
||||
38
SignalsTest/Messenger.cs
Normal file
38
SignalsTest/Messenger.cs
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using Telegram.Bot;
|
||||
using Telegram.Bot.Exceptions;
|
||||
using Telegram.Bot.Polling;
|
||||
using Telegram.Bot.Types;
|
||||
using Telegram.Bot.Types.Enums;
|
||||
|
||||
namespace SignalsTest
|
||||
{
|
||||
public class Messenger
|
||||
{
|
||||
TelegramBotClient botClient;
|
||||
|
||||
private static Messenger m_instance;
|
||||
public static Messenger instance { get { if (m_instance == null) { m_instance = new Messenger(); } return m_instance; } }
|
||||
|
||||
public async Task SendMessage(string text, string chat = "@doralockscryptosignals")
|
||||
{
|
||||
await botClient.SendTextMessageAsync(chat, text);
|
||||
}
|
||||
|
||||
public Messenger()
|
||||
{
|
||||
botClient = new TelegramBotClient("6878629725:AAGWFqmtsvf2xFLOTvsixY-LEG4ho2sLqrw");
|
||||
using CancellationTokenSource cts = new();
|
||||
|
||||
// StartReceiving does not block the caller thread. Receiving is done on the ThreadPool.
|
||||
ReceiverOptions receiverOptions = new()
|
||||
{
|
||||
AllowedUpdates = Array.Empty<UpdateType>() // receive all update types except ChatMember related updates
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
17
SignalsTest/Program.cs
Normal file
17
SignalsTest/Program.cs
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
namespace SignalsTest
|
||||
{
|
||||
internal static class Program
|
||||
{
|
||||
/// <summary>
|
||||
/// The main entry point for the application.
|
||||
/// </summary>
|
||||
[STAThread]
|
||||
static void Main()
|
||||
{
|
||||
// To customize application configuration such as set high DPI settings or default font,
|
||||
// see https://aka.ms/applicationconfiguration.
|
||||
ApplicationConfiguration.Initialize();
|
||||
Application.Run(new Form1());
|
||||
}
|
||||
}
|
||||
}
|
||||
16
SignalsTest/SignalsTest.csproj
Normal file
16
SignalsTest/SignalsTest.csproj
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<OutputType>WinExe</OutputType>
|
||||
<TargetFramework>net7.0-windows</TargetFramework>
|
||||
<Nullable>enable</Nullable>
|
||||
<UseWindowsForms>true</UseWindowsForms>
|
||||
<ImplicitUsings>enable</ImplicitUsings>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="BinanceDotNet" Version="4.12.0" />
|
||||
<PackageReference Include="Telegram.Bot" Version="19.0.0" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
8
SignalsTest/SignalsTest.csproj.user
Normal file
8
SignalsTest/SignalsTest.csproj.user
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup>
|
||||
<Compile Update="Form1.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
54
SignalsTest/TAReport.cs
Normal file
54
SignalsTest/TAReport.cs
Normal file
|
|
@ -0,0 +1,54 @@
|
|||
using BinanceExchange.API.Models.Response;
|
||||
using Newtonsoft.Json;
|
||||
using SignalsTest;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace SignalsTest
|
||||
{
|
||||
public class TAReport
|
||||
{
|
||||
public Dictionary<int, decimal> SMAs = new Dictionary<int, decimal>();
|
||||
public Dictionary<int, decimal> EMAs = new Dictionary<int, decimal>();
|
||||
|
||||
public decimal MACD = 0;
|
||||
public decimal EMACD = 0;
|
||||
|
||||
public decimal ATR = 0;
|
||||
public decimal AVGDiff = 0;
|
||||
|
||||
public static TAReport Generate(List<KlineCandleStickResponse> response, int index, int[] m_SMA, int[] m_EMA)
|
||||
{
|
||||
TAReport report = new TAReport();
|
||||
|
||||
foreach(int sma in m_SMA)
|
||||
{
|
||||
report.SMAs.Add(sma, Indicators.getSMA(response, index, sma));
|
||||
}
|
||||
|
||||
foreach (int ema in m_EMA)
|
||||
{
|
||||
report.SMAs.Add(ema, Indicators.getEMA(response, index, 0, ema));
|
||||
}
|
||||
|
||||
report.MACD = Indicators.getMACD(response, 12, 26, index);
|
||||
|
||||
return report;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public static class CustomExtensions
|
||||
{
|
||||
|
||||
public static string toJson(this TAReport report)
|
||||
{
|
||||
return JsonConvert.SerializeObject(report);
|
||||
}
|
||||
}
|
||||
65
SignalsTest/Utils.cs
Normal file
65
SignalsTest/Utils.cs
Normal file
|
|
@ -0,0 +1,65 @@
|
|||
using BinanceExchange.API.Enums;
|
||||
using BinanceExchange.API.Models.Response;
|
||||
using BinanceExchange.API.Models.WebSocket;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace SignalsTest
|
||||
{
|
||||
public class Utils
|
||||
{
|
||||
public static int GetMinutesForInterval(KlineInterval interval)
|
||||
|
||||
{
|
||||
switch (interval)
|
||||
{
|
||||
case KlineInterval.OneMinute:
|
||||
return 1;
|
||||
case KlineInterval.ThreeMinutes:
|
||||
return 3;
|
||||
case KlineInterval.FiveMinutes:
|
||||
return 5;
|
||||
case KlineInterval.FifteenMinutes:
|
||||
return 15;
|
||||
case KlineInterval.ThirtyMinutes:
|
||||
return 30;
|
||||
case KlineInterval.OneHour:
|
||||
return 60;
|
||||
case KlineInterval.TwoHours:
|
||||
return 120;
|
||||
case KlineInterval.FourHours:
|
||||
return 240;
|
||||
case KlineInterval.EightHours:
|
||||
return 60 * 8;
|
||||
case KlineInterval.TwelveHours:
|
||||
return 60 * 12;
|
||||
case KlineInterval.SixHours:
|
||||
return 60 * 6;
|
||||
case KlineInterval.OneDay:
|
||||
return 60 * 24;
|
||||
case KlineInterval.ThreeDays:
|
||||
return 60 * 24 * 3;
|
||||
|
||||
default:
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
public static KlineCandleStickResponse KlineToResponse(BinanceKlineData data)
|
||||
{
|
||||
KlineCandleStickResponse response = new KlineCandleStickResponse();
|
||||
response.Open = data.Kline.Open;
|
||||
response.Close = data.Kline.Close;
|
||||
response.CloseTime = data.Kline.EndTime;
|
||||
response.OpenTime = data.Kline.StartTime;
|
||||
response.High = data.Kline.High;
|
||||
response.Low = data.Kline.Low;
|
||||
response.Volume = data.Kline.Volume;
|
||||
|
||||
return response;
|
||||
}
|
||||
}
|
||||
}
|
||||
BIN
SignalsTest/bin/Debug/net7.0-windows/BinanceExchange.API.dll
Normal file
BIN
SignalsTest/bin/Debug/net7.0-windows/BinanceExchange.API.dll
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
SignalsTest/bin/Debug/net7.0-windows/Newtonsoft.Json.dll
Normal file
BIN
SignalsTest/bin/Debug/net7.0-windows/Newtonsoft.Json.dll
Normal file
Binary file not shown.
1667
SignalsTest/bin/Debug/net7.0-windows/SignalsTest.deps.json
Normal file
1667
SignalsTest/bin/Debug/net7.0-windows/SignalsTest.deps.json
Normal file
File diff suppressed because it is too large
Load Diff
BIN
SignalsTest/bin/Debug/net7.0-windows/SignalsTest.dll
Normal file
BIN
SignalsTest/bin/Debug/net7.0-windows/SignalsTest.dll
Normal file
Binary file not shown.
BIN
SignalsTest/bin/Debug/net7.0-windows/SignalsTest.exe
Normal file
BIN
SignalsTest/bin/Debug/net7.0-windows/SignalsTest.exe
Normal file
Binary file not shown.
BIN
SignalsTest/bin/Debug/net7.0-windows/SignalsTest.pdb
Normal file
BIN
SignalsTest/bin/Debug/net7.0-windows/SignalsTest.pdb
Normal file
Binary file not shown.
|
|
@ -0,0 +1,15 @@
|
|||
{
|
||||
"runtimeOptions": {
|
||||
"tfm": "net7.0",
|
||||
"frameworks": [
|
||||
{
|
||||
"name": "Microsoft.NETCore.App",
|
||||
"version": "7.0.0"
|
||||
},
|
||||
{
|
||||
"name": "Microsoft.WindowsDesktop.App",
|
||||
"version": "7.0.0"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
BIN
SignalsTest/bin/Debug/net7.0-windows/Telegram.Bot.dll
Normal file
BIN
SignalsTest/bin/Debug/net7.0-windows/Telegram.Bot.dll
Normal file
Binary file not shown.
BIN
SignalsTest/bin/Debug/net7.0-windows/log4net.dll
Normal file
BIN
SignalsTest/bin/Debug/net7.0-windows/log4net.dll
Normal file
Binary file not shown.
BIN
SignalsTest/bin/Debug/net7.0-windows/websocket-sharp.dll
Normal file
BIN
SignalsTest/bin/Debug/net7.0-windows/websocket-sharp.dll
Normal file
Binary file not shown.
|
|
@ -0,0 +1,4 @@
|
|||
// <autogenerated />
|
||||
using System;
|
||||
using System.Reflection;
|
||||
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v7.0", FrameworkDisplayName = ".NET 7.0")]
|
||||
|
|
@ -0,0 +1,25 @@
|
|||
//------------------------------------------------------------------------------
|
||||
// <auto-generated>
|
||||
// This code was generated by a tool.
|
||||
// Runtime Version:4.0.30319.42000
|
||||
//
|
||||
// Changes to this file may cause incorrect behavior and will be lost if
|
||||
// the code is regenerated.
|
||||
// </auto-generated>
|
||||
//------------------------------------------------------------------------------
|
||||
|
||||
using System;
|
||||
using System.Reflection;
|
||||
|
||||
[assembly: System.Reflection.AssemblyCompanyAttribute("SignalsTest")]
|
||||
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
|
||||
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
|
||||
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")]
|
||||
[assembly: System.Reflection.AssemblyProductAttribute("SignalsTest")]
|
||||
[assembly: System.Reflection.AssemblyTitleAttribute("SignalsTest")]
|
||||
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
|
||||
[assembly: System.Runtime.Versioning.TargetPlatformAttribute("Windows7.0")]
|
||||
[assembly: System.Runtime.Versioning.SupportedOSPlatformAttribute("Windows7.0")]
|
||||
|
||||
// Generated by the MSBuild WriteCodeFragment class.
|
||||
|
||||
|
|
@ -0,0 +1 @@
|
|||
8725648ef383ce4a00a1d68ea58dbde6e1974552
|
||||
BIN
SignalsTest/obj/Debug/net7.0-windows/SignalsTest.Form1.resources
Normal file
BIN
SignalsTest/obj/Debug/net7.0-windows/SignalsTest.Form1.resources
Normal file
Binary file not shown.
|
|
@ -0,0 +1,17 @@
|
|||
is_global = true
|
||||
build_property.ApplicationManifest =
|
||||
build_property.StartupObject =
|
||||
build_property.ApplicationDefaultFont =
|
||||
build_property.ApplicationHighDpiMode =
|
||||
build_property.ApplicationUseCompatibleTextRendering =
|
||||
build_property.ApplicationVisualStyles =
|
||||
build_property.TargetFramework = net7.0-windows
|
||||
build_property.TargetPlatformMinVersion = 7.0
|
||||
build_property.UsingMicrosoftNETSdkWeb =
|
||||
build_property.ProjectTypeGuids =
|
||||
build_property.InvariantGlobalization =
|
||||
build_property.PlatformNeutralAssembly =
|
||||
build_property.EnforceExtendedAnalyzerRules =
|
||||
build_property._SupportedPlatformList = Linux,macOS,Windows
|
||||
build_property.RootNamespace = SignalsTest
|
||||
build_property.ProjectDir = C:\Users\warlock\source\repos\SignalsTest\SignalsTest\
|
||||
|
|
@ -0,0 +1,10 @@
|
|||
// <auto-generated/>
|
||||
global using global::System;
|
||||
global using global::System.Collections.Generic;
|
||||
global using global::System.Drawing;
|
||||
global using global::System.IO;
|
||||
global using global::System.Linq;
|
||||
global using global::System.Net.Http;
|
||||
global using global::System.Threading;
|
||||
global using global::System.Threading.Tasks;
|
||||
global using global::System.Windows.Forms;
|
||||
BIN
SignalsTest/obj/Debug/net7.0-windows/SignalsTest.assets.cache
Normal file
BIN
SignalsTest/obj/Debug/net7.0-windows/SignalsTest.assets.cache
Normal file
Binary file not shown.
Binary file not shown.
|
|
@ -0,0 +1 @@
|
|||
1abe55b7aefe63e56bc647c73acadf31a0f50de2
|
||||
|
|
@ -0,0 +1,28 @@
|
|||
C:\Users\warlock\source\repos\SignalsTest\SignalsTest\bin\Debug\net7.0-windows\SignalsTest.exe
|
||||
C:\Users\warlock\source\repos\SignalsTest\SignalsTest\bin\Debug\net7.0-windows\SignalsTest.deps.json
|
||||
C:\Users\warlock\source\repos\SignalsTest\SignalsTest\bin\Debug\net7.0-windows\SignalsTest.runtimeconfig.json
|
||||
C:\Users\warlock\source\repos\SignalsTest\SignalsTest\bin\Debug\net7.0-windows\SignalsTest.dll
|
||||
C:\Users\warlock\source\repos\SignalsTest\SignalsTest\bin\Debug\net7.0-windows\SignalsTest.pdb
|
||||
C:\Users\warlock\source\repos\SignalsTest\SignalsTest\bin\Debug\net7.0-windows\Newtonsoft.Json.dll
|
||||
C:\Users\warlock\source\repos\SignalsTest\SignalsTest\bin\Debug\net7.0-windows\Telegram.Bot.dll
|
||||
C:\Users\warlock\source\repos\SignalsTest\SignalsTest\obj\Debug\net7.0-windows\SignalsTest.csproj.AssemblyReference.cache
|
||||
C:\Users\warlock\source\repos\SignalsTest\SignalsTest\obj\Debug\net7.0-windows\SignalsTest.Form1.resources
|
||||
C:\Users\warlock\source\repos\SignalsTest\SignalsTest\obj\Debug\net7.0-windows\SignalsTest.csproj.GenerateResource.cache
|
||||
C:\Users\warlock\source\repos\SignalsTest\SignalsTest\obj\Debug\net7.0-windows\SignalsTest.GeneratedMSBuildEditorConfig.editorconfig
|
||||
C:\Users\warlock\source\repos\SignalsTest\SignalsTest\obj\Debug\net7.0-windows\SignalsTest.AssemblyInfoInputs.cache
|
||||
C:\Users\warlock\source\repos\SignalsTest\SignalsTest\obj\Debug\net7.0-windows\SignalsTest.AssemblyInfo.cs
|
||||
C:\Users\warlock\source\repos\SignalsTest\SignalsTest\obj\Debug\net7.0-windows\SignalsTest.csproj.CoreCompileInputs.cache
|
||||
C:\Users\warlock\source\repos\SignalsTest\SignalsTest\obj\Debug\net7.0-windows\SignalsTest.csproj.CopyComplete
|
||||
C:\Users\warlock\source\repos\SignalsTest\SignalsTest\obj\Debug\net7.0-windows\SignalsTest.dll
|
||||
C:\Users\warlock\source\repos\SignalsTest\SignalsTest\obj\Debug\net7.0-windows\refint\SignalsTest.dll
|
||||
C:\Users\warlock\source\repos\SignalsTest\SignalsTest\obj\Debug\net7.0-windows\SignalsTest.pdb
|
||||
C:\Users\warlock\source\repos\SignalsTest\SignalsTest\obj\Debug\net7.0-windows\SignalsTest.genruntimeconfig.cache
|
||||
C:\Users\warlock\source\repos\SignalsTest\SignalsTest\obj\Debug\net7.0-windows\ref\SignalsTest.dll
|
||||
C:\Users\warlock\source\repos\SignalsTest\SignalsTest\bin\Debug\net7.0-windows\BinanceExchange.API.dll
|
||||
C:\Users\warlock\source\repos\SignalsTest\SignalsTest\bin\Debug\net7.0-windows\log4net.dll
|
||||
C:\Users\warlock\source\repos\SignalsTest\SignalsTest\bin\Debug\net7.0-windows\Microsoft.Extensions.Caching.Abstractions.dll
|
||||
C:\Users\warlock\source\repos\SignalsTest\SignalsTest\bin\Debug\net7.0-windows\Microsoft.Extensions.Caching.Memory.dll
|
||||
C:\Users\warlock\source\repos\SignalsTest\SignalsTest\bin\Debug\net7.0-windows\Microsoft.Extensions.DependencyInjection.Abstractions.dll
|
||||
C:\Users\warlock\source\repos\SignalsTest\SignalsTest\bin\Debug\net7.0-windows\Microsoft.Extensions.Options.dll
|
||||
C:\Users\warlock\source\repos\SignalsTest\SignalsTest\bin\Debug\net7.0-windows\Microsoft.Extensions.Primitives.dll
|
||||
C:\Users\warlock\source\repos\SignalsTest\SignalsTest\bin\Debug\net7.0-windows\websocket-sharp.dll
|
||||
Binary file not shown.
2177
SignalsTest/obj/Debug/net7.0-windows/SignalsTest.designer.deps.json
Normal file
2177
SignalsTest/obj/Debug/net7.0-windows/SignalsTest.designer.deps.json
Normal file
File diff suppressed because it is too large
Load Diff
|
|
@ -0,0 +1,22 @@
|
|||
{
|
||||
"runtimeOptions": {
|
||||
"tfm": "net7.0",
|
||||
"frameworks": [
|
||||
{
|
||||
"name": "Microsoft.NETCore.App",
|
||||
"version": "7.0.0"
|
||||
},
|
||||
{
|
||||
"name": "Microsoft.WindowsDesktop.App",
|
||||
"version": "7.0.0"
|
||||
}
|
||||
],
|
||||
"additionalProbingPaths": [
|
||||
"C:\\Users\\warlock\\.dotnet\\store\\|arch|\\|tfm|",
|
||||
"C:\\Users\\warlock\\.nuget\\packages"
|
||||
],
|
||||
"configProperties": {
|
||||
"Microsoft.NETCore.DotNetHostPolicy.SetAppPaths": true
|
||||
}
|
||||
}
|
||||
}
|
||||
BIN
SignalsTest/obj/Debug/net7.0-windows/SignalsTest.dll
Normal file
BIN
SignalsTest/obj/Debug/net7.0-windows/SignalsTest.dll
Normal file
Binary file not shown.
|
|
@ -0,0 +1 @@
|
|||
455e932b8572e1830edb82d365ae6bf98cc6d5cf
|
||||
BIN
SignalsTest/obj/Debug/net7.0-windows/SignalsTest.pdb
Normal file
BIN
SignalsTest/obj/Debug/net7.0-windows/SignalsTest.pdb
Normal file
Binary file not shown.
BIN
SignalsTest/obj/Debug/net7.0-windows/apphost.exe
Normal file
BIN
SignalsTest/obj/Debug/net7.0-windows/apphost.exe
Normal file
Binary file not shown.
BIN
SignalsTest/obj/Debug/net7.0-windows/ref/SignalsTest.dll
Normal file
BIN
SignalsTest/obj/Debug/net7.0-windows/ref/SignalsTest.dll
Normal file
Binary file not shown.
BIN
SignalsTest/obj/Debug/net7.0-windows/refint/SignalsTest.dll
Normal file
BIN
SignalsTest/obj/Debug/net7.0-windows/refint/SignalsTest.dll
Normal file
Binary file not shown.
76
SignalsTest/obj/SignalsTest.csproj.nuget.dgspec.json
Normal file
76
SignalsTest/obj/SignalsTest.csproj.nuget.dgspec.json
Normal file
|
|
@ -0,0 +1,76 @@
|
|||
{
|
||||
"format": 1,
|
||||
"restore": {
|
||||
"C:\\Users\\warlock\\source\\repos\\SignalsTest\\SignalsTest\\SignalsTest.csproj": {}
|
||||
},
|
||||
"projects": {
|
||||
"C:\\Users\\warlock\\source\\repos\\SignalsTest\\SignalsTest\\SignalsTest.csproj": {
|
||||
"version": "1.0.0",
|
||||
"restore": {
|
||||
"projectUniqueName": "C:\\Users\\warlock\\source\\repos\\SignalsTest\\SignalsTest\\SignalsTest.csproj",
|
||||
"projectName": "SignalsTest",
|
||||
"projectPath": "C:\\Users\\warlock\\source\\repos\\SignalsTest\\SignalsTest\\SignalsTest.csproj",
|
||||
"packagesPath": "C:\\Users\\warlock\\.nuget\\packages\\",
|
||||
"outputPath": "C:\\Users\\warlock\\source\\repos\\SignalsTest\\SignalsTest\\obj\\",
|
||||
"projectStyle": "PackageReference",
|
||||
"configFilePaths": [
|
||||
"C:\\Users\\warlock\\AppData\\Roaming\\NuGet\\NuGet.Config",
|
||||
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
|
||||
],
|
||||
"originalTargetFrameworks": [
|
||||
"net7.0-windows"
|
||||
],
|
||||
"sources": {
|
||||
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
|
||||
"https://api.nuget.org/v3/index.json": {}
|
||||
},
|
||||
"frameworks": {
|
||||
"net7.0-windows7.0": {
|
||||
"targetAlias": "net7.0-windows",
|
||||
"projectReferences": {}
|
||||
}
|
||||
},
|
||||
"warningProperties": {
|
||||
"warnAsError": [
|
||||
"NU1605"
|
||||
]
|
||||
}
|
||||
},
|
||||
"frameworks": {
|
||||
"net7.0-windows7.0": {
|
||||
"targetAlias": "net7.0-windows",
|
||||
"dependencies": {
|
||||
"BinanceDotNet": {
|
||||
"target": "Package",
|
||||
"version": "[4.12.0, )"
|
||||
},
|
||||
"Telegram.Bot": {
|
||||
"target": "Package",
|
||||
"version": "[19.0.0, )"
|
||||
}
|
||||
},
|
||||
"imports": [
|
||||
"net461",
|
||||
"net462",
|
||||
"net47",
|
||||
"net471",
|
||||
"net472",
|
||||
"net48",
|
||||
"net481"
|
||||
],
|
||||
"assetTargetFallback": true,
|
||||
"warn": true,
|
||||
"frameworkReferences": {
|
||||
"Microsoft.NETCore.App": {
|
||||
"privateAssets": "all"
|
||||
},
|
||||
"Microsoft.WindowsDesktop.App.WindowsForms": {
|
||||
"privateAssets": "none"
|
||||
}
|
||||
},
|
||||
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\7.0.400\\RuntimeIdentifierGraph.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
15
SignalsTest/obj/SignalsTest.csproj.nuget.g.props
Normal file
15
SignalsTest/obj/SignalsTest.csproj.nuget.g.props
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
<?xml version="1.0" encoding="utf-8" standalone="no"?>
|
||||
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
||||
<RestoreSuccess Condition=" '$(RestoreSuccess)' == '' ">True</RestoreSuccess>
|
||||
<RestoreTool Condition=" '$(RestoreTool)' == '' ">NuGet</RestoreTool>
|
||||
<ProjectAssetsFile Condition=" '$(ProjectAssetsFile)' == '' ">$(MSBuildThisFileDirectory)project.assets.json</ProjectAssetsFile>
|
||||
<NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">$(UserProfile)\.nuget\packages\</NuGetPackageRoot>
|
||||
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\warlock\.nuget\packages\</NuGetPackageFolders>
|
||||
<NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
|
||||
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">6.7.0</NuGetToolVersion>
|
||||
</PropertyGroup>
|
||||
<ItemGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
||||
<SourceRoot Include="C:\Users\warlock\.nuget\packages\" />
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
2
SignalsTest/obj/SignalsTest.csproj.nuget.g.targets
Normal file
2
SignalsTest/obj/SignalsTest.csproj.nuget.g.targets
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
<?xml version="1.0" encoding="utf-8" standalone="no"?>
|
||||
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" />
|
||||
5856
SignalsTest/obj/project.assets.json
Normal file
5856
SignalsTest/obj/project.assets.json
Normal file
File diff suppressed because it is too large
Load Diff
106
SignalsTest/obj/project.nuget.cache
Normal file
106
SignalsTest/obj/project.nuget.cache
Normal file
|
|
@ -0,0 +1,106 @@
|
|||
{
|
||||
"version": 2,
|
||||
"dgSpecHash": "71ztVzCYayaLYd0wtiBLXah3FMlnj77gG9lGuibXRGaKQWp/npe4owfsmaRSwjqIIrXKLcFCn26u6Pd3qqEyfA==",
|
||||
"success": true,
|
||||
"projectFilePath": "C:\\Users\\warlock\\source\\repos\\SignalsTest\\SignalsTest\\SignalsTest.csproj",
|
||||
"expectedPackageFiles": [
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\binancedotnet\\4.12.0\\binancedotnet.4.12.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\log4net\\2.0.8\\log4net.2.0.8.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\microsoft.extensions.caching.abstractions\\1.0.0\\microsoft.extensions.caching.abstractions.1.0.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\microsoft.extensions.caching.memory\\1.0.0\\microsoft.extensions.caching.memory.1.0.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\microsoft.extensions.dependencyinjection.abstractions\\1.0.0\\microsoft.extensions.dependencyinjection.abstractions.1.0.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\microsoft.extensions.options\\1.0.0\\microsoft.extensions.options.1.0.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\microsoft.extensions.primitives\\1.0.0\\microsoft.extensions.primitives.1.0.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\microsoft.netcore.platforms\\1.1.0\\microsoft.netcore.platforms.1.1.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\microsoft.netcore.targets\\1.1.0\\microsoft.netcore.targets.1.1.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\microsoft.win32.primitives\\4.0.1\\microsoft.win32.primitives.4.0.1.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\microsoft.win32.registry\\4.0.0\\microsoft.win32.registry.4.0.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\newtonsoft.json\\13.0.1\\newtonsoft.json.13.0.1.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl\\4.3.2\\runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl\\4.3.2\\runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl\\4.3.2\\runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\runtime.native.system\\4.3.0\\runtime.native.system.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\runtime.native.system.net.http\\4.3.0\\runtime.native.system.net.http.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\runtime.native.system.security.cryptography.apple\\4.3.0\\runtime.native.system.security.cryptography.apple.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\runtime.native.system.security.cryptography.openssl\\4.3.2\\runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl\\4.3.2\\runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl\\4.3.2\\runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple\\4.3.0\\runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl\\4.3.2\\runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl\\4.3.2\\runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl\\4.3.2\\runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl\\4.3.2\\runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl\\4.3.2\\runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl.4.3.2.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.appcontext\\4.1.0\\system.appcontext.4.1.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.collections\\4.3.0\\system.collections.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.collections.concurrent\\4.3.0\\system.collections.concurrent.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.collections.immutable\\1.2.0\\system.collections.immutable.1.2.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.collections.nongeneric\\4.0.1\\system.collections.nongeneric.4.0.1.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.componentmodel\\4.0.1\\system.componentmodel.4.0.1.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.console\\4.0.0\\system.console.4.0.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.diagnostics.debug\\4.3.0\\system.diagnostics.debug.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.diagnostics.diagnosticsource\\4.3.0\\system.diagnostics.diagnosticsource.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.diagnostics.process\\4.1.0\\system.diagnostics.process.4.1.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.diagnostics.stacktrace\\4.0.1\\system.diagnostics.stacktrace.4.0.1.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.diagnostics.tracesource\\4.0.0\\system.diagnostics.tracesource.4.0.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.diagnostics.tracing\\4.3.0\\system.diagnostics.tracing.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.globalization\\4.3.0\\system.globalization.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.globalization.calendars\\4.3.0\\system.globalization.calendars.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.globalization.extensions\\4.3.0\\system.globalization.extensions.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.io\\4.3.0\\system.io.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.io.filesystem\\4.3.0\\system.io.filesystem.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.io.filesystem.primitives\\4.3.0\\system.io.filesystem.primitives.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.io.filesystem.watcher\\4.0.0\\system.io.filesystem.watcher.4.0.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.linq\\4.3.0\\system.linq.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.linq.expressions\\4.1.0\\system.linq.expressions.4.1.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.net.http\\4.3.3\\system.net.http.4.3.3.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.net.nameresolution\\4.0.0\\system.net.nameresolution.4.0.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.net.primitives\\4.3.0\\system.net.primitives.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.net.requests\\4.0.11\\system.net.requests.4.0.11.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.net.sockets\\4.1.0\\system.net.sockets.4.1.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.net.webheadercollection\\4.0.1\\system.net.webheadercollection.4.0.1.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.objectmodel\\4.0.12\\system.objectmodel.4.0.12.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.reflection\\4.3.0\\system.reflection.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.reflection.emit\\4.0.1\\system.reflection.emit.4.0.1.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.reflection.emit.ilgeneration\\4.0.1\\system.reflection.emit.ilgeneration.4.0.1.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.reflection.emit.lightweight\\4.0.1\\system.reflection.emit.lightweight.4.0.1.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.reflection.extensions\\4.0.1\\system.reflection.extensions.4.0.1.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.reflection.metadata\\1.3.0\\system.reflection.metadata.1.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.reflection.primitives\\4.3.0\\system.reflection.primitives.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.reflection.typeextensions\\4.1.0\\system.reflection.typeextensions.4.1.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.resources.resourcemanager\\4.3.0\\system.resources.resourcemanager.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.runtime\\4.3.0\\system.runtime.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.runtime.extensions\\4.3.0\\system.runtime.extensions.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.runtime.handles\\4.3.0\\system.runtime.handles.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.runtime.interopservices\\4.3.0\\system.runtime.interopservices.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.runtime.interopservices.runtimeinformation\\4.0.0\\system.runtime.interopservices.runtimeinformation.4.0.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.runtime.numerics\\4.3.0\\system.runtime.numerics.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.runtime.serialization.formatters\\4.3.0\\system.runtime.serialization.formatters.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.runtime.serialization.primitives\\4.3.0\\system.runtime.serialization.primitives.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.security.claims\\4.0.1\\system.security.claims.4.0.1.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.security.cryptography.algorithms\\4.3.0\\system.security.cryptography.algorithms.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.security.cryptography.cng\\4.3.0\\system.security.cryptography.cng.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.security.cryptography.csp\\4.3.0\\system.security.cryptography.csp.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.security.cryptography.encoding\\4.3.0\\system.security.cryptography.encoding.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.security.cryptography.openssl\\4.3.0\\system.security.cryptography.openssl.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.security.cryptography.primitives\\4.3.0\\system.security.cryptography.primitives.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.security.cryptography.x509certificates\\4.3.0\\system.security.cryptography.x509certificates.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.security.principal\\4.0.1\\system.security.principal.4.0.1.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.security.principal.windows\\4.0.0\\system.security.principal.windows.4.0.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.text.encoding\\4.3.0\\system.text.encoding.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.text.encoding.extensions\\4.0.11\\system.text.encoding.extensions.4.0.11.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.text.regularexpressions\\4.1.0\\system.text.regularexpressions.4.1.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.threading\\4.3.0\\system.threading.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.threading.overlapped\\4.0.1\\system.threading.overlapped.4.0.1.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.threading.tasks\\4.3.0\\system.threading.tasks.4.3.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.threading.tasks.extensions\\4.0.0\\system.threading.tasks.extensions.4.0.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.threading.thread\\4.0.0\\system.threading.thread.4.0.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.threading.threadpool\\4.0.10\\system.threading.threadpool.4.0.10.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.threading.timer\\4.0.1\\system.threading.timer.4.0.1.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.xml.readerwriter\\4.0.11\\system.xml.readerwriter.4.0.11.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\system.xml.xmldocument\\4.0.1\\system.xml.xmldocument.4.0.1.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\telegram.bot\\19.0.0\\telegram.bot.19.0.0.nupkg.sha512",
|
||||
"C:\\Users\\warlock\\.nuget\\packages\\websocketsharp-netstandard\\1.0.1\\websocketsharp-netstandard.1.0.1.nupkg.sha512"
|
||||
],
|
||||
"logs": []
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user