Ana içeriğe geç

Visual Studio ve diğer IDE'leri kullanın

Yeni cBot'lar/göstergeler oluşturun

Yeni cBot'lar/göstergeler oluşturmak için yerleşik kod düzenleyiciyi kullanmak yerine harici IDE'leri kullanmayı seçebilirsiniz. Harici IDE'leri kullanmak, linter'lar ve otomatik biçimlendiriciler dâhil olmak üzere özel IDE uzantılarını kullanabilme gibi çeşitli avantajlar sunar.

Harici IDE'ler

cTrader tarafından şu anda desteklenen harici IDE'lerin tam listesi aşağıdadır.

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

Kaynak koduna erişiminiz varsa yukarıdakilerden herhangi birini kullanarak bir algoyu düzenleyebilirsiniz. Listeden böyle bir algoyu seçin ve kod düzenleyici penceresinin üst kısmındaki Şurada Düzenle... açılır menüsünü açın. Menüde, algoyu açmak istediğiniz IDE'yi seçin.

C# ve .NET ile çalışmak için çok sayıda uygun IDE bulunsa da Microsoft Visual Studio veya Visual Studio Code kullanmanızı öneririz. Bu IDE'lerin her ikisi de kullanımı kolaydır ve C# ve .NET ile çalışmayı kolaylaştıran çok çeşitli özelleştirilebilir ayarlar sunar. Belgelerimiz yalnızca bu IDE'leri kapsar.

Visual Studio

cTrader.Automate NuGet paketini yükleyin

Bir cBot veya gösterge oluşturmadan önce cTrader.Automate NuGet paketini yükleyin. Bunu aşağıdaki eylemleri gerçekleştirerek yapabilirsiniz:

  • Visual Studio'da Proje menüsünü açın ve NuGet paketlerini yönet'i seçin.
  • Paket kaynağınız olarak nuget.org'u seçin ve arama çubuğuna cTrader yazın.
  • cTrader.Automate paketine tıklayın ve Yükle'yi seçin.

Image title

Not

Visual Studio'nun eski bir sürümünden (2015 veya öncesi) çalışıyorsanız NuGet Paket Yöneticisi'ni de yüklemeniz gerekecektir. Daha fazla bilgi için bu belgelere başvurun.

Alternatif olarak, Araçlar menüsünü açın, NuGet paket yöneticisi'ni seçin ve Paket Yöneticisi Konsolu'nu açın. İçine Install-Package cTrader.Automate yazın.

cTrader.Automate NuGet paketini yükledikten sonra, bir cBot/gösterge projesi oluşturduğunuzda Visual Studio, projeniz için build dizininde otomatik olarak bir .algo dosyası oluşturacaktır. Windows'ta çalışırken, paket ayrıca ../Documents/cAlgo/Sources/{Robots/Indicators} klasöründe ilgili bir .algo dosyası oluşturacaktır.

Visual Studio'da yeni cBot'lar ve göstergeler oluşturun

Yeni bir cBot/gösterge oluşturmak için Visual Studio içinde yeni bir proje oluşturun ve Sınıf kitaplığı'nı seçin. Projenize, cBot'unuzun/uzantınızın adlandırılmasını istediğiniz şekilde ad verin.

Image title

Class1.cs dosyasında, cBot'unuz/göstergeniz için kodu yazın. Ardından, Oluştur menüsünü açın ve Çözümü oluştur'u seçin. Alternatif olarak, Ctrl+Shift+B tuşlarına basın. Başarılı bir oluşturma işleminden sonra, yukarıda belirtilen dizinlerde bir .algo dosyası görmelisiniz.

Yeni cBot'unuzu/göstergenizi cTrader kullanıcı arayüzünde görmüyorsanız, cTrader platformunu yeniden başlatın ve diğer uzantılar arasında görünmelidir.

Visual Studio hakkında ek bilgi için bu belgelere başvurun.

Visual Studio Code

Visual Studio'ya kıyasla, VS Code çok daha hafif bir kod düzenleyicidir ve bu da geliştiriciler arasındaki artan popülaritesini haklı çıkarır. To create cBots/indicators via VS Code, you have to meet the following prerequisites.

  • .NET SDK yükleyin.
  • VS Code içinde bir C# uzantısı yükleyin.

Uygun bir uzantı yüklemek için uzantılar pazarını açın, arama çubuğuna C# yazın ve resmi Microsoft uzantısını veya başka uygun bir eklentiyi seçin.

Image title

Ardından, cBot'unuzu/göstergenizi içeren bir çözüm ve bir sınıf kitaplığı projesi oluşturmak için .NET komut satırı arayüzünü (CLI) kullanmanız gerekecektir.

Not

Documents\cAlgo\Sources dizinini yalnızca bir Windows sistemi kullanıyorsanız kullanmalısınız, aksi takdirde gösterge/cBot projelerinizi herhangi bir dizinde oluşturabilir ve derleyebilirsiniz.

Bir gösterge oluşturun

VS Code aracılığıyla bir gösterge oluşturmak için Terminal menüsünde Yeni terminal'i seçerek yeni bir PowerShell terminali açın. Alternatif olarak, Ctrl+Shift+` tuşlarına basın.

1. Terminalde, Documents\cAlgo\Sources\Indicators dizininizi açın.

cd Documents\cAlgo\Sources\Indicators

2. Göstergeniz için yeni bir dizin oluşturun. Gösterge çözümünüzü ve projenizi içerecektir. Bu dizine geçin.

mkdir MyIndicator
cd MyIndicator

3. Yeni oluşturulan dizinin içinde yeni bir .NET çözümü oluşturun.

dotnet new sln

4. Bir sınıf kitaplığı .NET projesi oluşturun.

dotnet new classlib --name MyIndicator

Bu proje MyIndicator dizininin içinde oluşturulacaktır.

5. Projeyi çözümünüze ekleyin.

dotnet sln add .\MyIndicator\MyIndicator.csproj

6. cTrader.Automate NuGet paketini yükleyin.

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

7. Bir gösterge sınıfı ekleyin. Bunu yapmak için Class1.cs dosyasını MyIndicator.cs olarak yeniden adlandırın ve açın, ardından içeriğini aşağıdaki yer tutucu kodla değiştirin. Kodu VS Code içinde düzenleyin.

 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. Projeyi oluşturun.

dotnet build --configuration Release

Projenizi kaynak kodla da oluşturabilirsiniz.

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

Göstergenizde hata ayıklamak istiyorsanız oluşturma yapılandırmasını Debug olarak değiştirebilirsiniz.

Başarılı bir oluşturma işleminden sonra, gösterge .algo dosyasına projesinin bin klasörünün içinde ve Windows kullanıyorsanız Documents\cAlgo\Sources\Indicators\ klasörünün içinde de sahip olacaksınız.

Bir cBot oluşturun

Bir cBot oluşturmak, bir gösterge oluşturmaya benzer; ancak Indicator sınıfı yerine Robot sınıfını ve Documents\cAlgo\Sources\Indicators\ dizini yerine Documents\cAlgo\Sources\Robots\ dizinini kullanmanız gerekir.

cBot sınıfınız için aşağıdaki örnek kodu kullanabilirsiniz:

 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
    }
}

Diğer .NET IDE'leri

İsterseniz cBot'lar, eklentiler ve göstergelerle çalışmak için başka IDE'ler kullanabilirsiniz. Geçerli cTrader uzantıları oluşturmak için bu adımları izleyin:

  1. Bir .NET sınıf kitaplığı projesi oluşturun.
  2. cTrader.Automate NuGet paketini yükleyin.
  3. cBot'unuzun/göstergenizin kaynak kodunu içeren bir sınıf dosyası oluşturun. Göstergeler Indicator sınıfından miras alırken, cBot'lar Robot sınıfından miras almalıdır.
  4. Uzantınızı oluşturun. Derleme/oluşturma hakkında daha fazla bilgi için bu belgelerin ilgili bölümünü kontrol edin.