Kemampuan untuk menambahkan tab baru ke Pemantau Trading membuat UI cTrader benar-benar dapat disesuaikan dan diadaptasi untuk berbagai kebutuhan trading.
Dalam artikel ini dan video terkait, kami akan mendemonstrasikan cara menambahkan objek ke panel Pemantau Trading menggunakan plugin.
Buat plugin
Kami akan membuat plugin situs web terlebih dahulu, tetapi plugin akhir kami akan berupa grid dua kali dua yang menampilkan informasi tentang harga bar terakhir yang diketahui untuk timeframe m1 dan simbol USDJPY.
Anda dapat memulai dengan membuka aplikasi Algo dan kemudian menavigasi ke tab Plugin. Klik tombol Baru untuk membuat plugin baru. Centang opsi Kosong. Beri nama plugin Anda, misalnya "Previous Bar Info", dan klik tombol Create.
Tambahkan tab baru ke panel Pemantau Trading dan beri nama Previous Bar Info.
12
vartradeWatchTab=TradeWatch.AddTab("Previous Bar Info");tradeWatchTab.IsSelected=true;
usingSystem;usingcAlgo.API;usingcAlgo.API.Collections;usingcAlgo.API.Indicators;usingcAlgo.API.Internals;namespacecAlgo.Plugins{[Plugin(AccessRights = AccessRights.None)]publicclassPreviousBarInfo:Plugin{protectedoverridevoidOnStart(){vartradeWatchTab=TradeWatch.AddTab("Previous Bar Info");tradeWatchTab.IsSelected=true;varwebView=newWebView();tradeWatchTab.Child=webView;webView.NavigateAsync("https://ctrader.com/");}protectedoverridevoidOnStop(){// Handle Plugin stop here}}}
Untuk membangun plugin, klik tombol Build atau gunakan hotkey Ctrl+B.
Buka aplikasi Trade untuk melihat apa yang ditampilkan plugin Anda.
Menggunakan komponen WebView, Anda dapat menampilkan situs web apa pun dalam plugin dengan mengatur URL situs web di kode plugin. Selain itu, Anda dapat membuat plugin berbeda untuk situs web yang Anda gunakan dalam trading harian Anda dan menyalakan atau mematikannya di pengaturan cTrader.
Menambahkan grid dan kotak teks ke plugin
Kembali ke aplikasi Algo dan edit kode plugin.
Kita perlu mengganti komponen WebView dengan objek grid dan menjadikan setiap grid sebagai anak dari plugin Pemantau Trading.
usingSystem;usingcAlgo.API;usingcAlgo.API.Collections;usingcAlgo.API.Indicators;usingcAlgo.API.Internals;namespacecAlgo.Plugins{[Plugin(AccessRights = AccessRights.None)]publicclassPreviousBarInfo:Plugin{TextBlock_lowBlock;TextBlock_highBlock;TextBlock_closeBlock;TextBlock_openBlock;Bars_bars;protectedoverridevoidOnStart(){vartradeWatchTab=TradeWatch.AddTab("Previous Bar Info");tradeWatchTab.IsSelected=true;vargrid=newGrid(2,2){HorizontalAlignment=HorizontalAlignment.Center,VerticalAlignment=VerticalAlignment.Center,ShowGridLines=true,Height=150,Width=150,};tradeWatchTab.Child=grid;_bars=MarketData.GetBars(TimeFrame.Minute,"USDJPY");_lowBlock=newTextBlock{Text="Low:"+_bars.LowPrices.LastValue,HorizontalAlignment=HorizontalAlignment.Center,VerticalAlignment=VerticalAlignment.Center,};_highBlock=newTextBlock{Text="High:"+_bars.HighPrices.LastValue,HorizontalAlignment=HorizontalAlignment.Center,VerticalAlignment=VerticalAlignment.Center,};_closeBlock=newTextBlock{Text="Close:"+_bars.ClosePrices.LastValue,HorizontalAlignment=HorizontalAlignment.Center,VerticalAlignment=VerticalAlignment.Center,};_openBlock=newTextBlock{Text="Open:"+_bars.OpenPrices.LastValue,HorizontalAlignment=HorizontalAlignment.Center,VerticalAlignment=VerticalAlignment.Center,};grid.AddChild(_lowBlock,0,0);grid.AddChild(_highBlock,0,1);grid.AddChild(_openBlock,1,0);grid.AddChild(_closeBlock,1,1);}protectedoverridevoidOnStop(){// Handle Plugin stop here}}}
Bangun plugin dan kemudian buka aplikasi Trade untuk melihat perubahannya.
Berlangganan event
Navigasikan kembali ke kode sumber plugin di aplikasi Algo. Tambahkan baris kode berikut untuk berlangganan event tick dan membuat nilai diperbarui pada setiap tick:
Setelah membaca artikel ini, kami yakin Anda sekarang dapat menambahkan situs web, grid, kotak teks, dan objek berguna lainnya ke panel Pemantau Trading.