Skip to content

Commit

Permalink
CoinCap connector.
Browse files Browse the repository at this point in the history
  • Loading branch information
mikasoukhov committed Dec 31, 2018
1 parent 7fc1e9c commit f0c44bb
Show file tree
Hide file tree
Showing 32 changed files with 1,461 additions and 0 deletions.
9 changes: 9 additions & 0 deletions BusinessEntities/ExchangeBoard_Instances.cs
Original file line number Diff line number Diff line change
Expand Up @@ -3353,5 +3353,14 @@ private static TimeZoneInfo GetTimeZone(string id, TimeSpan offset)
Code = Exchange.TradeOgre.Name,
Exchange = Exchange.TradeOgre,
};

/// <summary>
/// Information about board <see cref="BusinessEntities.Exchange.CoinCap"/>.
/// </summary>
public static ExchangeBoard CoinCap { get; } = new ExchangeBoard
{
Code = Exchange.CoinCap.Name,
Exchange = Exchange.CoinCap,
};
}
}
10 changes: 10 additions & 0 deletions BusinessEntities/Exchange_Instances.cs
Original file line number Diff line number Diff line change
Expand Up @@ -1000,5 +1000,15 @@ static Exchange()
EngName = "TradeOgre",
RusName = "TradeOgre",
};

/// <summary>
/// Information about CoinCap.
/// </summary>
public static Exchange CoinCap { get; } = new Exchange
{
Name = "CNCP",
EngName = "CoinCap",
RusName = "CoinCap",
};
}
}
4 changes: 4 additions & 0 deletions Configuration/Configuration.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -122,6 +122,10 @@
<Project>{AB948D64-73B2-4BDC-972C-337E51A67265}</Project>
<Name>Coinbase</Name>
</ProjectReference>
<ProjectReference Include="..\..\StockSharp %28GitLab%29\Connectors\CoinCap\CoinCap.csproj">
<Project>{6C63BF6A-28F2-4C5E-ADD9-55CD1126DE4B}</Project>
<Name>CoinCap</Name>
</ProjectReference>
<ProjectReference Include="..\..\StockSharp %28GitLab%29\Connectors\Coincheck\Coincheck.csproj">
<Project>{1D19F91C-214C-44CD-9064-A22BD89D7AB1}</Project>
<Name>Coincheck</Name>
Expand Down
3 changes: 3 additions & 0 deletions Configuration/ConfigurationGitHub.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -88,6 +88,9 @@
<Reference Include="StockSharp.Coinbase">
<HintPath>..\References\StockSharp.Coinbase.dll</HintPath>
</Reference>
<Reference Include="StockSharp.CoinCap">
<HintPath>..\References\StockSharp.CoinCap.dll</HintPath>
</Reference>
<Reference Include="StockSharp.Coincheck">
<HintPath>..\References\StockSharp.Coincheck.dll</HintPath>
</Reference>
Expand Down
3 changes: 3 additions & 0 deletions Configuration/ConfigurationPublic.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -88,6 +88,9 @@
<Reference Include="StockSharp.Coinbase">
<HintPath>..\References\StockSharp.Coinbase.dll</HintPath>
</Reference>
<Reference Include="StockSharp.CoinCap">
<HintPath>..\References\StockSharp.CoinCap.dll</HintPath>
</Reference>
<Reference Include="StockSharp.Coincheck">
<HintPath>..\References\StockSharp.Coincheck.dll</HintPath>
</Reference>
Expand Down
2 changes: 2 additions & 0 deletions Configuration/Extensions.cs
Original file line number Diff line number Diff line change
Expand Up @@ -95,6 +95,7 @@ namespace StockSharp.Configuration
using StockSharp.Xaml.Charting.IndicatorPainters;
using StockSharp.Yobit;
using StockSharp.Zaif;
using StockSharp.CoinCap;

/// <summary>
/// Extension class.
Expand Down Expand Up @@ -235,6 +236,7 @@ public static bool Configure(this BasketMessageAdapter adapter, Window owner)
() => typeof(DigifinexMessageAdapter),
() => typeof(IdaxMessageAdapter),
() => typeof(TradeOgreMessageAdapter),
() => typeof(CoinCapMessageAdapter),
});

/// <summary>
Expand Down
2 changes: 2 additions & 0 deletions Localization/XmlComments/StockSharp.BusinessEntities.csv
Original file line number Diff line number Diff line change
Expand Up @@ -130,6 +130,7 @@ P:StockSharp.BusinessEntities.Exchange.Wiki/summary;DocStr10807
P:StockSharp.BusinessEntities.Exchange.Idax/summary;DocStr10892
P:StockSharp.BusinessEntities.Exchange.Digifinex/summary;DocStr10893
P:StockSharp.BusinessEntities.Exchange.TradeOgre/summary;DocStr10894
P:StockSharp.BusinessEntities.Exchange.CoinCap/summary;DocStr10903
T:StockSharp.BusinessEntities.ExchangeBoard/summary;DocStr2692
M:StockSharp.BusinessEntities.ExchangeBoard.EnumerateExchanges/summary;DocStr2693
M:StockSharp.BusinessEntities.ExchangeBoard.EnumerateExchanges/returns;DocStr2694
Expand Down Expand Up @@ -351,6 +352,7 @@ P:StockSharp.BusinessEntities.ExchangeBoard.Wiki/summary;DocStr2809
P:StockSharp.BusinessEntities.ExchangeBoard.Idax/summary;DocStr2809
P:StockSharp.BusinessEntities.ExchangeBoard.Digifinex/summary;DocStr2809
P:StockSharp.BusinessEntities.ExchangeBoard.TradeOgre/summary;DocStr2809
P:StockSharp.BusinessEntities.ExchangeBoard.CoinCap/summary;DocStr2809
T:StockSharp.BusinessEntities.IConnector/summary;DocStr2825
E:StockSharp.BusinessEntities.IConnector.NewMyTrade/summary;DocStr8546
E:StockSharp.BusinessEntities.IConnector.NewMyTrades/summary;DocStr867
Expand Down
7 changes: 7 additions & 0 deletions Localization/XmlComments/StockSharp.CoinCap.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
T:StockSharp.CoinCap.CoinCapMessageAdapter/summary;DocStr2538
P:StockSharp.CoinCap.CoinCapMessageAdapter.AllTimeFrames/summary;DocStr206
M:StockSharp.CoinCap.CoinCapMessageAdapter.#ctor(Ecng.Common.IdGenerator)/summary;DocStr1
M:StockSharp.CoinCap.CoinCapMessageAdapter.#ctor(Ecng.Common.IdGenerator)/param/transactionIdGenerator;DocStr3311
M:StockSharp.CoinCap.CoinCapMessageAdapter.OnSendInMessage(StockSharp.Messages.Message)/inheritdoc;DocStr8459
T:StockSharp.CoinCap.CoinCapTrader/summary;DocStr2539
M:StockSharp.CoinCap.CoinCapTrader.#ctor/summary;DocStr1
Binary file added References/StockSharp.CoinCap.dll
Binary file not shown.
37 changes: 37 additions & 0 deletions References/StockSharp.CoinCap.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 8 additions & 0 deletions Samples/CoinCap/SampleCoinCap/App.xaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
<Application x:Class="SampleCoinCap.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
StartupUri="MainWindow.xaml" ShutdownMode="OnMainWindowClose" DispatcherUnhandledException="ApplicationDispatcherUnhandledException">
<Application.Resources>

</Application.Resources>
</Application>
14 changes: 14 additions & 0 deletions Samples/CoinCap/SampleCoinCap/App.xaml.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
namespace SampleCoinCap
{
using System.Windows;
using System.Windows.Threading;

public partial class App
{
private void ApplicationDispatcherUnhandledException(object sender, DispatcherUnhandledExceptionEventArgs e)
{
MessageBox.Show(MainWindow, e.Exception.ToString());
e.Handled = true;
}
}
}
8 changes: 8 additions & 0 deletions Samples/CoinCap/SampleCoinCap/ChartWindow.xaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
<Window x:Class="SampleCoinCap.ChartWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:charting="http://schemas.stocksharp.com/xaml"
Title="ChartWindow" Height="448" Width="758">

<charting:Chart x:Name="Chart" />
</Window>
62 changes: 62 additions & 0 deletions Samples/CoinCap/SampleCoinCap/ChartWindow.xaml.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
namespace SampleCoinCap
{
using System;
using System.ComponentModel;
using System.Windows.Media;

using StockSharp.Algo.Candles;
using StockSharp.CoinCap;
using StockSharp.Xaml.Charting;

partial class ChartWindow
{
private readonly CoinCapTrader _trader;
private readonly CandleSeries _candleSeries;
private readonly ChartCandleElement _candleElem;

public ChartWindow(CandleSeries candleSeries, DateTimeOffset? from = null, DateTimeOffset? to = null)
{
InitializeComponent();

_candleSeries = candleSeries ?? throw new ArgumentNullException(nameof(candleSeries));
_trader = MainWindow.Instance.Trader;

Chart.ChartTheme = ChartThemes.ExpressionDark;

var area = new ChartArea();
Chart.Areas.Add(area);

_candleElem = new ChartCandleElement
{
AntiAliasing = false,
UpFillColor = Colors.White,
UpBorderColor = Colors.Black,
DownFillColor = Colors.Black,
DownBorderColor = Colors.Black,
};

area.Elements.Add(_candleElem);

_trader.CandleSeriesProcessing += ProcessNewCandle;
_trader.SubscribeCandles(_candleSeries, from, to);

Title = candleSeries.ToString();
}

private void ProcessNewCandle(CandleSeries series, Candle candle)
{
if (series != _candleSeries)
return;

Chart.Draw(_candleElem, candle);
}

protected override void OnClosing(CancelEventArgs e)
{
_trader.UnSubscribeCandles(_candleSeries);
_trader.CandleSeriesProcessing -= ProcessNewCandle;

base.OnClosing(e);
}
}
}
21 changes: 21 additions & 0 deletions Samples/CoinCap/SampleCoinCap/MainWindow.xaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
<Window x:Class="SampleCoinCap.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:loc="clr-namespace:StockSharp.Localization;assembly=StockSharp.Localization"
Title="{x:Static loc:LocalizedStrings.XamlStr540}" Height="110" Width="512" ResizeMode="NoResize">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition />
<RowDefinition />
</Grid.RowDefinitions>

<Button x:Name="ConnectBtn" Background="LightPink" Grid.Column="0" Grid.Row="0" Grid.RowSpan="2" Content="{x:Static loc:LocalizedStrings.Connect}" Click="ConnectClick" />
<Button x:Name="ShowSecurities" Grid.Column="1" Grid.Row="0" IsEnabled="False" Content="{x:Static loc:LocalizedStrings.Securities}" Click="ShowSecuritiesClick" />

<Button x:Name="ShowTrades" Grid.Column="1" Grid.Row="1" IsEnabled="False" Content="{x:Static loc:LocalizedStrings.Ticks}" Click="ShowTradesClick" />
</Grid>
</Window>
Loading

0 comments on commit f0c44bb

Please sign in to comment.