TradeWatch Tab Sample¶
개요 ¶
TradeWatch Tab Sample 플러그인은 트레이드 워치에 새 탭을 추가하여 활성 차트의 심벌에 대한 실시간 통계와 거래 작업을 표시합니다. 다음과 같은 주요 기능을 제공합니다:
- 플러그인을 트레이드 워치의 새 탭으로 자동 추가합니다.
- 실시간 거래 통계를 표시합니다.
- 현재 차트 심벌에 대한 시장가 주문 실행을 가능하게 합니다.
- 활성 차트 심벌이 변경될 때 자동으로 업데이트됩니다.

이 플러그인은 활성 차트를 반영하는 전용 트레이드 워치 탭을 통해 실행됩니다. cTrader Windows 또는 Mac이 실행되는 동안 활성 상태를 유지하며 중지될 때 시스템 리소스를 자동으로 해제합니다.
플러그인 생성 ¶
단계별 가이드에서 템플릿 또는 처음부터 플러그인을 생성, 편집 및 빌드하는 방법을 알아보세요.
TradeWatch Tab Sample 플러그인의 코드는 GitHub에서 찾을 수 있으며, 아래에서 간단히 복사할 수도 있습니다.
샘플 코드
using cAlgo.API;
namespace cAlgo.Plugins
{
[Plugin(AccessRights = AccessRights.None)]
public class MyTradeWatchTabSample1 : Plugin
{
private SymbolStatsControl _symbolStatsControl;
private TradeControl _tradeControl;
protected override void OnStart()
{
var tab = TradeWatch.AddTab("Active Chart Symbol Stats");
var panel = new StackPanel
{Orientation = Orientation.Vertical, HorizontalAlignment = HorizontalAlignment.Center};
_symbolStatsControl = new SymbolStatsControl {Margin = 10};
_tradeControl = new TradeControl {Margin = 10};
panel.AddChild(_symbolStatsControl);
panel.AddChild(_tradeControl);
tab.Child = panel;
SetSymbolStats();
_tradeControl.Trade += TradeControlOnTrade;
ChartManager.ActiveFrameChanged += _ => SetSymbolStats();
}
private void TradeControlOnTrade(object sender, TradeEventArgs e)
{
ExecuteMarketOrder(e.TradeType, e.SymbolName, e.Volume);
}
private void SetSymbolStats()
{
if (ChartManager.ActiveFrame is not ChartFrame chartFrame)
return;
_tradeControl.Symbol = chartFrame.Symbol;
_symbolStatsControl.Symbol = chartFrame.Symbol;
}
}
}
사용자 지정 옵션 ¶
이 플러그인은 실시간 차트 컨텍스트를 트레이드 워치 패널을 통한 거래 실행과 연결합니다. 아래 표는 주요 구성 요소와 그 기능을 설명합니다:
| 매개변수 | 설명 | 가능한 값 |
|---|---|---|
TradeWatch.AddTab | 트레이드 워치 패널의 탭 구성. | Active chart symbol stats |
StackPanel.Orientation | UI 요소의 쌓임 방향을 정의합니다. | Vertical 또는 `horizontal |
HorizontalAlignment | 탭에서 패널의 수평 정렬을 정의합니다. | Center, left, right 등. |
SymbolStatsControl.Margin | 심벌 통계 제어 요소 주변의 여백을 설정합니다. | 10, 12, 14 등. |
TradeControl.Margin | 거래 제어 요소 주변의 여백을 설정합니다. | 10, 12, 14 등. |
SymbolStatsControl.Symbol | 심벌 통계 제어 요소를 특정 차트 심벌에 바인딩합니다. | chartframe.symbol, eurusd, gbpjpy 등. |
TradeControl.Symbol | 거래 작업을 위해 TradeControl을 심벌에 연결합니다. | chartframe.symbol, eurusd, gbpjpy 등. |
ChartManager.ActiveFrameChanged | 차트 프레임이 변경될 때 심벌 통계 업데이트를 트리거하는 이벤트. | _ => setsymbolstats() |
TradeControl.Trade | 제어 패널에서 거래 작업이 취해질 때 트리거되는 이벤트. | tradecontrolontrade 또는 null |
ExecuteMarketOrder | 호출 시 거래를 실행합니다. | e.tradetype, e.symbolname, e.volume |
사용 사례 ¶
TradeWatch Tab Sample 플러그인은 실시간 차트 컨텍스트를 거래 실행과 연결하여 cTrader를 향상시키는 간단한 방법을 제공합니다. 거래 워크플로우를 간소화하는 실용적인 애플리케이션을 지원합니다. 아래는 플러그인이 거래 경험을 향상시킬 수 있는 방법을 보여주는 실용적인 사용 사례입니다.
| 사용 사례 | 시나리오 | 가치 |
|---|---|---|
| 심벌 잠금 | 플러그인 탭을 각 차트 전환에 따라 업데이트되는 대신 항상 EURUSD와 같은 고정 심벌을 표시하도록 설정합니다. | 차트 컨텍스트에 관계없이 한 가지 상품을 일관되게 추적하고 거래할 수 있도록 도와줍니다. |
| 차트 연결 거래 패널 | 플러그인을 활성 차트 심벌과 동기화하여 항상 관련 통계와 거래 옵션을 표시합니다. | 도구나 패널을 전환할 필요 없이 차트 분석에 빠르게 대응할 수 있습니다. |
| 고정 거래량 거래 | 주문 핸들러의 기본 거래량을 고정 또는 선호하는 랏 크기로 조정합니다. | 매번 거래량을 조정할 필요가 없어 실행을 간소화합니다. |
| 빠른 액션 터미널 | 컨트롤을 수평으로 재배치하고 중앙 정렬하여 간소화된 거래 패널을 만듭니다. | 컴팩트한 설정에서 통계와 거래 버튼에 더 빠르게 접근할 수 있습니다. |
요약 ¶
TradeWatch Tab Sample은 실시간 통계와 거래 컨트롤을 트레이드 워치 내의 전용 탭으로 결합하여 거래 워크플로우를 간소화합니다. 활성 차트와 함께 자동으로 업데이트되며, 레이아웃, 심벌 동작 및 거래 설정을 다양한 거래 스타일이나 집중 영역에 맞게 사용자 정의할 수 있습니다.
추가 개발 세부 사항은 플러그인 문서를 참조하세요.