Skip to content

A .Net CryptoCurrency algotrading backtester with a .Net Core server backend and a WinForms frontend

Notifications You must be signed in to change notification settings

ashbz/CryptoSharp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CryptoSharp

This is a complete cryptocurrency backtesting platform that I developed as my final thesis project for University of West Attica.

Platform architecture

Platform architecture

Main components are:

  • .Net Core API backend
  • WinForms based frontend that communicates with the backend
  • CryptoCore: a library that is used in both the backend and the frontend to provide the same core functionality to both applications

Features

  • C# strategy scripting
  • Script editor with C# syntax highlighting
  • Live compile-time script error checking
  • Add indicators directly to the chart
  • Market prices and candlestick data directly from Binance
  • Ability to choose any candlestick interval (5 min, 15 min, 2 hours, etc)
  • Visual representation of buys and sells on the chart

Tech used

  • CS-Script (for C# code execution)
  • DevExpress components (used on the frontend)
  • SQLite (caches candlestick data)
  • TA-Lib (technical indicators)
  • FastColoredTextBox (script editor component)
  • RestSharp (HTTP requests to communicate with the backend)
  • Newtonsoft Json (json parser)

Running

To compile and run, after restoring all packages from nuget, set default Binance API Key and Secret in CryptoCore.Classes.Globals.DEFAULT_BINANCE_KEY and CryptoCore.Classes.Globals.DEFAULT_BINANCE_SECRET.

Default user login is:

User: admin

Pass: 123

First you run CryptoAPI server (the easiest way is dotnet CryptoAPI.dll) and afterwards you run CryptoFront.exe, which is the frontend.

Screenshots

.Net Core API server (Backend)

.Net Core API server

CryptoFront (Frontend)

CryptoFront

Sample partial C# Strategy

Sample C# Strategy

Indicator Editor

Indicator Editor

Chart with a SMA and Bollinger Band indicators

Chart with technical indicators

Strategy Options

Strategy Options

Chart after backtesting of a strategy

Chart after backtest

Backtest results

Backtest result

About

A .Net CryptoCurrency algotrading backtester with a .Net Core server backend and a WinForms frontend

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages