Lewati ke isi

Menggunakan Visual Studio dan IDE lainnya

Membuat cBot/indikator baru

Anda dapat memilih untuk menggunakan IDE eksternal untuk membuat cBot/indikator baru alih-alih menggunakan editor kode bawaan. Menggunakan IDE eksternal memiliki beberapa keuntungan seperti dapat menggunakan ekstensi IDE kustom termasuk linter dan pemformat otomatis.

IDE Eksternal

Berikut adalah daftar lengkap IDE eksternal yang saat ini didukung oleh cTrader.

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

Anda dapat menggunakan salah satu dari yang di atas untuk mengedit algo jika Anda memiliki akses ke kode sumbernya. Pilih algo tersebut dalam daftar dan buka dropdown Edit di... di bagian atas jendela editor kode. Dalam menu, pilih IDE yang ingin Anda gunakan untuk membuka algo tersebut.

Meskipun ada sejumlah besar IDE yang cocok untuk bekerja dengan C# dan .NET, kami merekomendasikan penggunaan Microsoft Visual Studio atau Visual Studio Code. Kedua IDE ini mudah digunakan dan menawarkan beragam pengaturan yang dapat disesuaikan untuk memfasilitasi pekerjaan dengan C# dan .NET. Dokumentasi kami hanya mencakup IDE-IDE ini.

Visual Studio

Instal paket NuGet cTrader.Automate

Sebelum membuat cBot atau indikator, instal paket NuGet cTrader.Automate. Anda dapat melakukannya dengan melakukan tindakan berikut:

  • Buka menu Project di Visual Studio dan pilih Manage NuGet packages.
  • Pilih nuget.org sebagai sumber paket Anda dan ketik cTrader di kotak pencarian.
  • Klik paket cTrader.Automate dan pilih Install.

Image title

Catatan

Jika Anda bekerja dengan versi Visual Studio yang lebih lama (2015 atau sebelumnya), Anda juga perlu menginstal NuGet Package Manager. Untuk informasi lebih lanjut, lihat dokumentasi ini.

Atau, buka menu Tools, pilih NuGet package manager, dan buka Package Manager Console. Di dalamnya, ketik Install-Package cTrader.Automate.

Setelah menginstal paket NuGet cTrader.Automate, setiap kali Anda membangun proyek cBot/indikator, Visual Studio akan secara otomatis membuat berkas .algo untuk proyek Anda di direktori build-nya. Saat bekerja di Windows, paket tersebut juga akan membuat berkas .algo yang sesuai di folder ../Documents/cAlgo/Sources/{Robots/Indicators}.

Membuat cBot dan indikator baru di Visual Studio

Untuk membuat cBot/indikator baru, buat proyek baru di dalam Visual Studio dan pilih Class library. Beri nama proyek Anda sesuai dengan nama yang Anda inginkan untuk cBot/ekstensi Anda.

Image title

Di berkas "Class1.cs", tulis kode untuk cBot/indikator Anda. Setelah itu, buka menu Build dan pilih Build solution. Atau, tekan Ctrl+Shift+B. Setelah build berhasil, Anda seharusnya melihat berkas .algo di direktori yang disebutkan di atas.

Jika Anda tidak melihat cBot/indikator baru Anda di antarmuka pengguna cTrader, luncurkan kembali platform cTrader, dan seharusnya muncul di antara ekstensi lainnya.

Untuk informasi tambahan tentang Visual Studio, lihat dokumentasi ini.

Visual Studio Code

Dibandingkan dengan Visual Studio, VS Code adalah editor kode yang jauh lebih ringan, yang membenarkan popularitasnya yang melonjak di kalangan pengembang. Untuk membuat cBot/indikator melalui VS Code, Anda harus memenuhi prasyarat berikut.

  • Instal .NET SDK.
  • Instal ekstensi C# di dalam VS Code.

Untuk menginstal ekstensi yang sesuai, buka pasar ekstensi, ketik C# di kotak pencarian dan pilih ekstensi resmi Microsoft atau add-on lain yang sesuai.

Image title

Setelah itu, Anda harus menggunakan antarmuka baris perintah (CLI) .NET untuk membuat solusi dan proyek pustaka kelas yang berisi cBot/indikator Anda.

Catatan

Anda harus menggunakan Documents\cAlgo\Sources hanya jika Anda menggunakan sistem Windows, jika tidak, Anda dapat membuat dan membangun proyek indikator/cBot Anda di direktori mana pun.

Membuat indikator

Untuk membuat indikator melalui VS Code, buka terminal PowerShell baru dengan memilih New terminal di menu Terminal. Atau, tekan Ctrl+Shift+`.

1. Di terminal, buka direktori Documents\cAlgo\Sources\Indicators Anda.

cd Documents\cAlgo\Sources\Indicators\

2. Buat direktori baru untuk indikator Anda. Ini akan berisi solusi dan proyek indikator Anda. Beralih ke direktori ini.

mkdir MyIndicator
cd MyIndicator

3. Buat solusi .NET baru di dalam direktori yang baru dibuat.

dotnet new sln

4. Buat proyek .NET pustaka kelas.

dotnet new classlib --name MyIndicator

Proyek ini akan dibuat di dalam direktori MyIndicator.

5. Tambahkan proyek ke solusi Anda.

dotnet sln add .\MyIndicator\MyIndicator.csproj

6. Instal paket NuGet cTrader.Automate.

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

7. Tambahkan kelas indikator. Untuk melakukannya, ubah nama file Class1.cs menjadi MyIndicator.cs dan buka, lalu ganti isinya dengan kode placeholder berikut. Edit kode di dalam 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. Build proyek.

dotnet build --configuration Release

Anda juga dapat mem-build proyek Anda dengan kode sumber.

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

Anda dapat mengubah konfigurasi build menjadi Debug jika Anda ingin men-debug indikator Anda.

Setelah build berhasil, Anda akan memiliki file indikator .algo di dalam folder bin proyeknya dan juga di dalam folder Documents\cAlgo\Sources\Indicators\ jika Anda menggunakan Windows.

Buat cBot

Membuat cBot mirip dengan membuat indikator kecuali Anda harus menggunakan kelas Robot alih-alih kelas Indicator dan direktori Documents\cAlgo\Sources\Robots\ alih-alih Documents\cAlgo\Sources\Indicators\.

Anda dapat menggunakan kode sampel di bawah ini untuk kelas cBot Anda:

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

IDE .NET lainnya

Jika Anda mau, Anda dapat menggunakan IDE lain untuk bekerja dengan cBot, plugin, dan indikator. Ikuti langkah-langkah berikut untuk membuat ekstensi cTrader yang valid:

  1. Buat proyek pustaka kelas .NET.
  2. Instal paket NuGet cTrader.Automate.
  3. Buat file kelas yang berisi kode sumber cBot/indikator Anda. Indikator mewarisi dari kelas Indicator sementara cBot harus mewarisi dari kelas Robot.
  4. Build ekstensi Anda. Untuk informasi lebih lanjut tentang kompilasi/building, periksa bagian terkait dari dokumentasi ini.