Lewati ke isi

Cara menambahkan awan ke indikator cTrader

cTrader Algo memungkinkan Anda untuk menggambar awan di antara garis-garis pada grafik. Awan seperti itu memungkinkan Anda untuk dengan cepat mengidentifikasi area-area kunci pada grafik dan mendeteksi perubahan dalam perilaku pasar.

Dalam artikel ini dan video terkaitnya, kami akan menunjukkan kepada Anda cara menambahkan dan menyesuaikan awan dalam indikator.

Tambahkan indikator

Indikator Bollinger Bands yang khas terdiri dari pita atas, pita bawah, dan rata-rata bergerak sederhana di tengah. Untuk meningkatkan tampilan indikator, kami berencana untuk mengisi ruang di antara pita-pita tersebut dengan awan.

Untuk membuat indikator, buka aplikasi Algo dan arahkan ke tab Indikator. Klik tombol Baru, ketikkan nama untuk indikator tersebut, misalnya "Bollinger Bands Cloud" lalu klik tombol Buat.

Sekarang kita dapat memodifikasi kode indikator. Kita akan membuat contoh kita sebagai indikator overlay.

1
[Indicator(AccessRights = AccessRights.None, IsOverlay = true)]

Kemudian kita menambahkan tiga garis output yang diperlukan untuk menggambar Bollinger Bands pada grafik.

1
2
3
4
5
6
7
8
[Output("Main", LineColor = "Yellow", PlotType = PlotType.Line, Thickness = 1)]
public IndicatorDataSeries Main { get; set; }

[Output("Top", LineColor = "Red", PlotType = PlotType.Line, Thickness = 1)]
public IndicatorDataSeries Top { get; set; }

[Output("Bottom", LineColor = "Red", PlotType = PlotType.Line, Thickness = 1)]
public IndicatorDataSeries Bottom { get; set; }

Kita mendeklarasikan indikator Bollinger Bands kita.

1
private BollingerBands _bollingerBands;

Inisialisasi indikator.

1
_bollingerBands = Indicators.BollingerBands(Bars.ClosePrices, 20, 2, MovingAverageType.Simple);

Isi garis-garis dengan nilai indikator dalam metode Calculate().

1
2
3
Main[index] = _bollingerBands.Main[index];
Top[index] = _bollingerBands.Top[index];
Bottom[index] = _bollingerBands.Bottom[index];

Anda dapat menyalin kode lengkapnya di bawah ini:

 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
29
30
31
32
33
34
35
36
37
38
using System;
using cAlgo.API;
using cAlgo.API.Collections;
using cAlgo.API.Indicators;
using cAlgo.API.Internals;

namespace cAlgo
{
    [Indicator(AccessRights = AccessRights.None, IsOverlay = true)]

    public class BollingerBandsCloud : Indicator
    {

        [Output("Main", LineColor = "Yellow", PlotType = PlotType.Line, Thickness = 1)]
        public IndicatorDataSeries Main { get; set; }

        [Output("Top", LineColor = "Red", PlotType = PlotType.Line, Thickness = 1)]
        public IndicatorDataSeries Top { get; set; }

        [Output("Bottom", LineColor = "Red", PlotType = PlotType.Line, Thickness = 1)]
        public IndicatorDataSeries Bottom { get; set; }

        private BollingerBands _bollingerBands;


        protected override void Initialize()
        {
            _bollingerBands = Indicators.BollingerBands(Bars.ClosePrices, 20, 2, MovingAverageType.Simple);
        }

        public override void Calculate(int index)
        {
            Main[index] = _bollingerBands.Main[index];
            Top[index] = _bollingerBands.Top[index];
            Bottom[index] = _bollingerBands.Bottom[index];
        }
    }
}

Klik Build atau gunakan pintasan Ctrl+B untuk membangun indikator.

Tambahkan instance indikator untuk simbol EURUSD.

Anda seharusnya melihat indikator Bollinger Bands yang khas pada grafik.

Menambahkan awan ke Bollinger Bands

Sekarang, kita kembali ke editor kode dan kemudian bekerja untuk menambahkan awan di antara pita-pita.

Untuk mencapai tujuan kita, kita menambahkan atribut Cloud ke indikator yang ada. Atribut Cloud menginstruksikan indikator untuk menggambar awan di antara garis Top dan Bottom.

1
[Cloud("Top", "Bottom", Opacity = 0.2)]

Anda dapat menyalin kode lengkap yang diubah di bawah ini:

 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
29
30
31
32
33
34
35
36
37
38
using System;
using cAlgo.API;
using cAlgo.API.Collections;
using cAlgo.API.Indicators;
using cAlgo.API.Internals;

namespace cAlgo
{
    [Indicator(AccessRights = AccessRights.None, IsOverlay = true)]
    [Cloud("Top", "Bottom", Opacity = 0.2)]

    public class BollingerBandsCloud : Indicator
    {

        [Output("Main", LineColor = "Yellow", PlotType = PlotType.Line, Thickness = 1)]
        public IndicatorDataSeries Main { get; set; }

        [Output("Top", LineColor = "Red", PlotType = PlotType.Line, Thickness = 1)]
        public IndicatorDataSeries Top { get; set; }

        [Output("Bottom", LineColor = "Red", PlotType = PlotType.Line, Thickness = 1)]
        public IndicatorDataSeries Bottom { get; set; }

        private BollingerBands _bollingerBands;

        protected override void Initialize()
        {
            _bollingerBands = Indicators.BollingerBands(Bars.ClosePrices, 20, 2, MovingAverageType.Simple);
        }

        public override void Calculate(int index)
        {
            Main[index] = _bollingerBands.Main[index];
            Top[index] = _bollingerBands.Top[index];
            Bottom[index] = _bollingerBands.Bottom[index];
        }
    }
}

Kita membangun ulang algoritma dan kemudian memeriksa indikator kita untuk melihat apa yang telah berubah.

Anda seharusnya melihat awan merah di antara pita-pita. Jika Anda mengubah warna garis Top, warna awan akan diperbarui secara otomatis.

Kita kembali ke editor kode dan mengubah atribut Cloud untuk menggambar awan hanya sebelum garis Main (kuning).

1
[Cloud("Top", "Main", Opacity = 0.2)]

Bangun ulang indikator dan kemudian periksa untuk mengonfirmasi tampilan barunya.

Menambahkan awan ke persilangan MA

Kita akan membuat indikator baru dan menggunakannya untuk mendemonstrasikan bagaimana awan dengan warna berbeda dapat ditambahkan ke grafik. Kami bermaksud untuk mengembangkan indikator Persilangan Moving Average (MA) dengan awan hijau untuk tren naik dan awan merah untuk tren turun.

Ulangi langkah-langkah dari bagian sebelumnya untuk membuat indikator baru. Kali ini, nama indikator harus "MA Cloud".

Kita mulai memodifikasi indikator baru dengan mengatur properti IsOverlay menjadi True.

1
[Indicator(AccessRights = AccessRights.None, IsOverlay = true)]

Tambahkan atribut Cloud yang diperlukan.

1
[Cloud("Fast", "Slow", Opacity = 0.2)]

Tambahkan garis output dan deklarasikan moving average.

1
2
3
4
5
6
7
8
[Output("Fast", LineColor = "Green", PlotType = PlotType.Line, Thickness = 1)]
public IndicatorDataSeries Fast { get; set; }

[Output("Slow", LineColor = "Red", PlotType = PlotType.Line, Thickness = 1)]
public IndicatorDataSeries Slow { get; set; }

SimpleMovingAverage _fastMA;
SimpleMovingAverage _slowMA;

Ulangi langkah dari contoh sebelumnya (Bollinger Bands). Inisialisasi moving average dan teruskan nilai yang dihasilkan ke garis-garis sehingga mereka ditampilkan pada grafik.

1
2
3
4
5
_fastMA = Indicators.SimpleMovingAverage(Bars.ClosePrices, 7);
_slowMA = Indicators.SimpleMovingAverage(Bars.ClosePrices, 13);

Fast[index] = _fastMA.Result[index];
Slow[index] = _slowMA.Result[index];

Anda dapat menyalin kode lengkapnya di bawah ini:

 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
29
30
31
32
33
34
35
36
37
38
using System;
using cAlgo.API;
using cAlgo.API.Collections;
using cAlgo.API.Indicators;
using cAlgo.API.Internals;

namespace cAlgo
{
    [Indicator(AccessRights = AccessRights.None, IsOverlay = true)]
    [Cloud("Top", "Bottom", Opacity = 0.2)]

    public class BollingerBandsCloud : Indicator
    {

        [Output("Main", LineColor = "Yellow", PlotType = PlotType.Line, Thickness = 1)]
        public IndicatorDataSeries Main { get; set; }

        [Output("Top", LineColor = "Red", PlotType = PlotType.Line, Thickness = 1)]
        public IndicatorDataSeries Top { get; set; }

        [Output("Bottom", LineColor = "Red", PlotType = PlotType.Line, Thickness = 1)]
        public IndicatorDataSeries Bottom { get; set; }

        private BollingerBands _bollingerBands;

        protected override void Initialize()
        {
            _bollingerBands = Indicators.BollingerBands(Bars.ClosePrices, 20, 2, MovingAverageType.Simple);
        }

        public override void Calculate(int index)
        {
            Main[index] = _bollingerBands.Main[index];
            Top[index] = _bollingerBands.Top[index];
            Bottom[index] = _bollingerBands.Bottom[index];
        }
    }
}

Bangun indikator dan tambahkan instance untuk melihat indikator pada grafik.

Warna awan berubah pada setiap persilangan (perpotongan) moving average.

Artikel ini menunjukkan kepada Anda cara menambahkan awan yang berguna ke indikator di cTrader.

Image title