Vai al contenuto

Usa Visual Studio e altri IDE

Crea nuovi cBot/indicatori

Puoi scegliere di utilizzare IDE esterni per creare nuovi cBot/indicatori invece di farlo utilizzando l'editor di codice integrato. L'utilizzo di IDE esterni comporta diversi vantaggi, come la possibilità di utilizzare estensioni IDE personalizzate, inclusi linter e formattatori automatici.

IDE esterni

Ecco l'elenco completo degli IDE esterni attualmente supportati da cTrader.

  • Visual Studio
  • Visual Studio Code
  • Rider
  • Sublime Text

Puoi utilizzare uno qualsiasi dei precedenti per modificare un algoritmo se hai accesso al suo codice sorgente. Seleziona tale algoritmo nell'elenco e apri il menu a discesa Modifica in... nella parte superiore della finestra dell'editor di codice. Nel menu, seleziona l'IDE con cui desideri aprire l'algoritmo.

Sebbene esista un gran numero di IDE adatti per lavorare con C# e .NET, consigliamo di utilizzare Microsoft Visual Studio o Visual Studio Code. Entrambi questi IDE sono facili da usare e offrono un'ampia gamma di impostazioni personalizzabili che facilitano il lavoro con C# e .NET. La nostra documentazione copre solo questi IDE.

Visual Studio

Installa il pacchetto NuGet cTrader.Automate

Prima di creare un cBot o un indicatore, installa il pacchetto NuGet cTrader.Automate. Puoi farlo eseguendo le seguenti azioni:

  • Apri il menu Progetto in Visual Studio e seleziona Gestisci pacchetti NuGet.
  • Seleziona nuget.org come origine del pacchetto e digita cTrader nella barra di ricerca.
  • Fai clic sul pacchetto cTrader.Automate e seleziona Installa.

Image title

Nota

Se stai lavorando con una versione precedente di Visual Studio (2015 o precedente), dovrai anche installare NuGet Package Manager. Per ulteriori informazioni, consulta questa documentazione.

In alternativa, apri il menu Strumenti, seleziona Gestione pacchetti NuGet e apri la Console di Gestione pacchetti. Al suo interno, digita Install-Package cTrader.Automate.

Dopo aver installato il pacchetto NuGet cTrader.Automate, ogni volta che esegui la build di un progetto cBot/indicatore, Visual Studio creerà automaticamente un file .algo per il tuo progetto nella sua directory build. Quando lavori in Windows, il pacchetto creerà anche un file .algo corrispondente nella cartella ../Documents/cAlgo/Sources/{Robots/Indicators}.

Crea nuovi cBot e indicatori in Visual Studio

Per creare un nuovo cBot/indicatore, crea un nuovo progetto all'interno di Visual Studio e scegli Libreria di classi. Assegna al tuo progetto il nome che desideri dare al tuo cBot/estensione.

Image title

Nel file "Class1.cs", scrivi il codice per il tuo cBot/indicatore. Successivamente, apri il menu Compila e seleziona Compila soluzione. In alternativa, premi Ctrl+Shift+B. Dopo una build riuscita, dovresti vedere un file .algo nelle directory specificate sopra.

Se non vedi il tuo nuovo cBot/indicatore nell'interfaccia utente di cTrader, riavvia la piattaforma cTrader e dovrebbe apparire tra le altre estensioni.

Per ulteriori informazioni su Visual Studio, consulta questa documentazione.

Visual Studio Code

Rispetto a Visual Studio, VS Code è un editor di codice molto più leggero, il che giustifica la sua crescente popolarità tra gli sviluppatori. To create cBots/indicators via VS Code, you have to meet the following prerequisites.

  • Installa l'SDK di .NET.
  • Installa un'estensione C# all'interno di VS Code.

Per installare un'estensione adatta, apri il marketplace delle estensioni, digita C# nella barra di ricerca e scegli l'estensione ufficiale Microsoft o qualsiasi altro componente aggiuntivo adatto.

Image title

Successivamente, dovrai utilizzare l'interfaccia della riga di comando (CLI) di .NET per creare una soluzione e un progetto di libreria di classi contenente il tuo cBot/indicatore.

Nota

Dovresti utilizzare Documents\cAlgo\Sources solo se stai utilizzando un sistema Windows, altrimenti puoi creare ed eseguire la build dei tuoi progetti indicatore/cBot in qualsiasi directory.

Crea un indicatore

Per creare un indicatore tramite VS Code, apri un nuovo terminale PowerShell scegliendo Nuovo terminale nel menu Terminale. In alternativa, premi Ctrl+Shift+`.

1. Nel terminale, apri la tua directory Documents\cAlgo\Sources\Indicators.

cd Documents\cAlgo\Sources\Indicators

2. Crea una nuova directory per il tuo indicatore. Conterrà la soluzione e il progetto del tuo indicatore. Passa a questa directory.

mkdir MyIndicator
cd MyIndicator

3. Crea una nuova soluzione .NET all'interno della directory appena creata.

dotnet new sln

4. Crea un progetto .NET di libreria di classi.

dotnet new classlib --name MyIndicator

Questo progetto verrà creato all'interno della directory MyIndicator.

5. Aggiungi il progetto alla tua soluzione.

dotnet sln add .\MyIndicator\MyIndicator.csproj

6. Installa il pacchetto NuGet cTrader.Automate.

dotnet add .\MyIndicator\MyIndicator.csproj package cTrader.Automate

7. Aggiungi una classe indicatore. Per farlo, rinomina il file Class1.cs in MyIndicator.cs e aprilo, quindi sostituisci il suo contenuto con il seguente codice segnaposto. Modifica il codice all'interno di VS Code.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
using cAlgo.API;

namespace cAlgo;

[Indicator(AccessRights = AccessRights.None)]
public class MyIndicator : Indicator
{
    [Parameter(DefaultValue = "Hello world!")]
    public string Message { get; set; }

    [Output("Main")]
    public IndicatorDataSeries Result { get; set; }

    protected override void Initialize()
    {
        // To learn more about cTrader Algo visit our Help Center:
        // https://help.ctrader.com/ctrader-algo

        Print(Message);
    }

    public override void Calculate(int index)
    {
        // Calculate value at specified index
        // Result[index] =
    }
}

8. Esegui la build del progetto.

dotnet build --configuration Release

Puoi anche eseguire la build del tuo progetto con il codice sorgente.

dotnet build --configuration Release -p:IncludeSource=True

Puoi modificare la configurazione della build in Debug se desideri eseguire il debug del tuo indicatore.

Dopo una build riuscita avrai il file .algo dell'indicatore all'interno della cartella bin del suo progetto e anche all'interno della cartella Documents\cAlgo\Sources\Indicators\ se stai utilizzando Windows.

Creare un cBot

Creare un cBot è simile alla creazione di un indicatore, con la differenza che devi utilizzare la classe Robot invece della classe Indicator e la directory Documents\cAlgo\Sources\Robots\ invece di Documents\cAlgo\Sources\Indicators\.

Puoi utilizzare il codice di esempio qui sotto per la tua classe cBot:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
using cAlgo.API;

namespace cAlgo.Robots;

[Robot(AccessRights = AccessRights.None)]
public class MyRobot : Robot
{
    [Parameter(DefaultValue = "Hello world!")]
    public string Message { get; set; }

    protected override void OnStart()
    {
        // To learn more about cTrader Algo visit our Help Center:
        // https://help.ctrader.com/ctrader-algo

        Print(Message);
    }

    protected override void OnTick()
    {
        // Handle price updates here
    }

    protected override void OnStop()
    {
        // Handle cBot stop here
    }
}

Altri IDE .NET

Se lo desideri, puoi utilizzare altri IDE per lavorare con cBot, plugin e indicatori. Segui questi passaggi per creare estensioni cTrader valide:

  1. Crea un progetto di libreria di classi .NET.
  2. Installa il pacchetto NuGet cTrader.Automate.
  3. Crea un file di classe contenente il codice sorgente del tuo cBot/indicatore. Gli indicatori ereditano dalla classe Indicator mentre i cBot devono ereditare dalla classe Robot.
  4. Costruisci la tua estensione. Per maggiori informazioni sulla compilazione/costruzione, consulta la sezione relativa di questa documentazione.