Stocksharp (S#) – a set of software for trading, creating trading strategies and creating trading robots (regular or HFT), usage features, where to download and how to use, interface features. StockSharp is an innovative software that allows users to create full-cycle automations (analysis/testing/trading) and
develop trading bots on their own . In addition to the standard technical analysis package, the platform contains a unique visual strategy builder. API connection is available for trading robots and third-party software. Below you can learn more about Stocksharp (S# – short), as well as evaluate the advantages and disadvantages of the popular platform.
- StockSharp Licensing
- Private trader
- Crypto Trader
- Extended license
- Corporate license
- Corporate Plus
- Stocksharp source codes on Github
- Installation Features
- launch
- Software installation and removal
- Program update features
- S#.API – a library for writing trading robots in C# in Visual Studio
- Features of installing S#.API
- Features of installing from GitHub
- Installing with Nuget
- Connectors
- Applications
- Tools
- Data storage
- S#.Designer is a universal designer program for creating trading robots and strategies
- S#.Terminal – trading terminal
- S#.Data (Hydra) – market data downloader
- S#.Shell – ready-made graphical framework with source codes
- S#.MatLab – MatLab integration with trading systems
- Trading from MatLab scripts
- Champions League Viewer – charts of the Champions League competition with deals of participants
StockSharp Licensing
Users are given the opportunity (https://doc.stocksharp.ru/topics/License.html) to choose the most appropriate type of license: extended/corporate/corporate plus/private trader/crypto trader.
Private trader
This type of license is provided free of charge after registration. The following programs will be available to the user:
- S#.Designer – designer of trading strategies https://stocksharp.ru/store/%D0%B4%D0%B8%D0%B7%D0%B0%D0%B9%D0%BD%D0%B5%D1%80 %20%D1%81%D1%82%D1%80%D0%B0%D1%82%D0%B5%D0%B3%D0%B8%D0%B9/;
- S#.Data Hydra – a program for automatically downloading and storing historical market data https://stocksharp.ru/store/hydra/;
- S#.Terminal trading terminal https://stocksharp.ru/store/%D1%82%D0%BE%D1%80%D0%B3%D0%BE%D0%B2%D1%8B%D0%B9%20 %D1%82%D0%B5%D1%80%D0%BC%D0%B8%D0%BD%D0%B0%D0%BB/;
- S#.API – a library for developing trading robots https://stocksharp.ru/store/api/.
Crypto Trader
The Crypto Trader license provides access to the following platforms: Binance/ Bitalong/Bitbank/Bitexbook/Bitfinex/Bithumb/BitStamp/BitMEX/Bittrex/WEX (BTC-e)/CEX.IO/Coinbase/Coincheck/CoinExchange/CoinCap/Coinigy/Cryptopia /Deribit/EXMO/DigiFinex/ DigitexFutures/GDAX/HitBTC/Huobi/IDAX/Kraken/KuCoin/Liqui/Livecoin/OKCoin/OKEx/Poloniex/PrizmBit/QuoineX/TradeOgre/YoBit/Zaif/LBank/BitMax/BW/Bibox/CoinBene /BitZ/ZB.
Extended license
The extended license allows users to simultaneously connect up to 3 programs to
the QUIK terminal . Access to video lessons, the duration of which exceeds 40 hours, and ready-made trading strategies is open.
Note! StockSharp’s technical support service quickly responds to emerging issues, helping the client solve any problem related to the operation of the software.
Corporate license
You will have to pay a fee to get a volume license. In addition to the basic/advanced license functionality, the user will be given direct access to:
- derivatives market on the Moscow Exchange ;
- the stock market on the Moscow Exchange;
- LSE/NASDAQ exchange.
Also, traders can manage orders on the derivatives market of the Moscow Exchange and connect to trading using the FIX/FAST protocol.
Corporate Plus
The corporate plus license includes the source codes of any ready-made software solutions (S#.Data/S#.Designer/S#.Shell). There are also source codes for the platform itself: S#.API.
Stocksharp source codes on Github
The S# core is developed within the Open Source community. S# is available as source in the GitHub/StockSharp repository at https://github.com/StockSharp/StockSharp. Components by type will be available with source codes:
- common classes that are used in the process of creating your own connections;
- trading simulator;
- history simulator;
- a huge number of technical analysis indicators (more than 70);
- logging.
Note! For beginners in the field of trading, the S#.Studio graphical environment is suitable, which greatly simplifies the process of creating and testing robots for trading.
GitHub guide – https://stocksharp.ru/forum/4848/rukovodstvo-po-github/
Installation Features
Most novice users do not understand how to properly launch StockSharp, install programs and update the software if necessary. The information below will help you understand how to install StockSharp.
launch
To install S#.Installer, users will need to follow the link https://stocksharp.ru/products/download/ and take care of downloading the distribution. The Installer.zip.Installerzip Properties block is removed.
Software installation and removal
The developers made sure that it was convenient for users to search in the program, and provided the ability to select the type of applications.
Program update features
The developers made sure that S#.Installer independently tracks software updates and automatically launches them. That is why after the installation is completed, it is better not to uninstall the program. To check available updates manually, you should click on the “Updates” button. You can find it in the right corner of the software window. If updates are available, a notification will appear on the screen. Now you need to tap on the button.
It is recommended to close S#.Installer through the toolbar. For this purpose, a transition to the menu is performed. Right-click on the “Close” button.
S#.API – a library for writing trading robots in C# in Visual Studio
S#.API is a free library that will be useful for both beginners and professionals in the field of
algorithmic trading. The library is focused on C# programming in the Visual Studio environment, thanks to which users get the opportunity to create absolutely any strategies: from positional ones with a long timeframe to high-frequency (HFT) ones that use direct access (DMA) to exchange trading. S#.API is the foundation of the rest of the products. On the basis of the library, developers have created various solutions like S#.Designer/S#.Data/S#.MatLab adapter, etc. Users have the ability to create their own connections to any external trading systems. The bot can work with any connection. It does not depend on the broker’s API, which is a significant advantage. S#.API is aimed at private traders / banking institutions / investment companies. The performance is quite high. Hundreds of strategies for any instrument are executed simultaneously. Testing on ticks/glasses is as accurate as possible. Real slippage is determined. You can download API and documentation for S#.API StockSharp at https://stocksharp.ru/store/api/ Quick start in StockSharp, creating a trading robot for Quik: https://youtu.be/F51bGEpTOvo
Features of installing S#.API
Since version 5.0, the installation of S#.API is done via NuGet. For previous versions, you should choose to install from the StockSharp Releases repository from the GitHub web service.
Features of installing from GitHub
First of all, users register on
GitHub . Next, go to the github.com/StockSharp/StockSharp page in the StockSharp repository and select the icon labeled “Releases”. A window will open on the screen in which you need to select the S# version (from the Downloads section) and download the necessary archives. The downloaded archives are unlocked and unzipped.
Note! In the archives StockSharp_#.#.#. contains zip-files of the library / source codes of examples. You can find the source codes in the Source Code archives.
Installing with Nuget
Using Nuget, users can install the S# library. To install the source codes and examples, you will need to go to GitHub.
Connectors
You need to work with stock exchanges and data sources in StockSharp through the Connector base class. The source codes can be found in the Samples/Common/SampleConnection project.
Connector class https://doc.stocksharp.ru/api/StockSharp.Algo.Connector.html :
…
public Connector Connector;
…
public MainWindow()
{
InitializeComponent();
Connector = new Connector();
InitConnector();
} In a special graphical interface that is designed to configure the Connector for S#.API, it is possible to configure multiple connections at the same time.
Note! Event handlers should be set in the InitConnector method.
Applications
Using the Order object, you can create a new order. Using the Connector.RegisterOrder(StockSharp.BusinessEntities.Order order) method, which sends an order to the server, the user will be able to register it on the exchange. If there is a need to create a stop order, experts advise taking care of specifying the Order.Type property as OrderTypes.Conditional. For further work with applications, the same object is used.
Tools
Security is a financial instrument used for trading. The instrument can be a stock/future/option, etc. The developer divided the tool baskets into classes:
- IndexSecurity;
- Continuous Security;
- WeightedIndexSecurity.
Data storage
In StockSharp, you can save data for later download. As a rule, it is necessary to store data to accumulate analysis / search for patterns, save market data from the
trading terminal (for testing bots). Data storage is absolutely transparent, because the developer took care of high-level access and hiding inside the technical details.
S#.Designer is a universal designer program for creating trading robots and strategies
S#.Designer is used to create, test and manage trading strategies in real trading. There are several types of creating strategies that this program offers. They are using:
- Kubikov. In this case, the user may not have programming skills. To create strategies, you will need to use the method of connecting lines and combining cubes.
- C#. This option is suitable for experienced programmers who are not afraid of working with code. Such a strategy is not limited in the possibilities for creation. It can describe any algorithms, unlike cubes. The strategy is created directly in S#.Designer or in the C# development environment.
During the first launch of S#.Designer, a window will appear on the screen in which you will need to select a launch mode.
Note! The most popular free source of historical data for the Russian market is Finam broker. The default data source is S#.Designer.
https://youtu.be/NrzI4yJFg7U Stocksharp Lesson Two: https://youtu.be/N_AFlKYP2rU Lesson Three: https://youtu.be/f75zeQL5Ucw
S#.Terminal – trading terminal
S#.Terminal is a free trading terminal, the main advantage of which is the simultaneous connection to a large number of trading platforms. Support for more than 70 connections from different exchanges of the world is available. Time frames are arbitrary.
S#.Data (Hydra) – market data downloader
The developers have created S#.Data (Hydra) software for automatic loading of market data (instruments/candles/tick deals/DOM) from various sources. The data can be saved in the local storage in the S#.Data (BIN) text format, which provides convenient data analysis in other software, or in a special binary format that provides the maximum compression level. The information that has been saved will become available for use by trading strategies. To access the data, you will need to use the StorageRegistry or regular uploads in the Excel/xml/txt format. S#.Data allows you to use both real-time and historical data sources at the same time. This advantage is achieved through the use of an extensible source model. During the first launch of the program, a window will open on the screen,
S#.Shell – ready-made graphical framework with source codes
S#.Shell is a ready-to-use graphical framework that allows you to make quick changes based on user requirements and is completely open source in the C# language. The robot will quickly create a graphical interface, save and restore the strategy settings, provide detailed information about the operation of the strategy, and automatically launch it on schedule. When you start S#.Shell, the Shell project will appear in Solution Explorer.
- connection settings buttons;
- button to save the current Shell configuration;
- main tabs.
Note! In the “Emulation” category, it is possible to run strategy testing on historical data.
S#.MatLab – MatLab integration with trading systems
The developers have created S#.MatLab – a link to the product https://doc.stocksharp.ru/topics/MatLab.html for trading specialists who write trading algorithms inside the MatLab MathWorks environment. The presence of the S#.MatLab integration connector makes it possible to connect to almost any broker/exchange. MatLab scripts, after receiving data from trading platforms, send trading orders to them. To get detailed settings, scripts and documentation, you will need to purchase S#.MatLab.
Trading from MatLab scripts
CSV files collect and store data. Current quotes are written in lines. The columns indicate the entire range of bid/ask quotes for each currency pair. If you can’t keep your PC on all the time, don’t worry. The data in this case will come in blocks. After downloading, you can close the program, rename the file so as not to get lost and restart it after a certain period of time.
Note! The size of arrays with data blocks will be different. Data blocks are stored in PRICES (global variable).
When creating a strategy, you should make sure that they accept only their own parameters as input. The initial data is transferred through global variables. When a trade is closed, the global variables are adjusted to characterize the quality of the strategy. To optimize these characteristics, you should create a “shell” inside which global variables will be initialized.
Note! Each time a trade is closed, the performance of the strategy is updated.
All Stocksharp documentation at https://doc.stocksharp.ru/
Champions League Viewer – charts of the Champions League competition with deals of participants
LCH Viewer is a software that displays trades of LCH participants on a chart with indicators. In the photo below you can see what the display of several tools will look like.