Custom Window Plugin¶
개요 ¶
Custom Window Plugin은 다음과 같은 주요 기능을 통해 사용자 입력에 기반한 작업을 트리거하기 위한 간단한 인터페이스를 cTrader에 생성합니다:
- 거래 작업 공간과 함께 사용자 정의 시각적 구성 요소를 표시하기 위해 cTrader 플랫폼 내에 창 인터페이스를 구축합니다.
- 사용자가 수동으로 작업을 시작할 수 있도록 상호 작용을 위한 버튼을 추가합니다.
- 버튼 클릭 시 사전 정의된 로직을 트리거하여 거래 작업의 일관된 처리를 가능하게 합니다.
- 설정된 조건에 따라 오픈 포지션을 업데이트하여 특정 기준이 충족될 때만 변경 사항을 적용합니다.

이 플러그인은 모든 오픈 포지션에 대해 특정 작업을 수행할 수 있는 창을 추가합니다. 이를 통해 각 포지션을 개별적으로 변경할 필요 없이 모든 포지션에 동일한 규칙을 한 번에 적용할 수 있어 수동 거래에 도움이 됩니다.
플러그인 생성 ¶
단계별 가이드에서 템플릿 또는 처음부터 플러그인을 생성, 편집 및 빌드하는 방법을 알아보세요.
Custom Window Plugin의 코드는 GitHub에서 찾을 수 있으며, 아래에서 간단히 복사할 수도 있습니다.
샘플 코드
using System;
using cAlgo.API;
using cAlgo.API.Collections;
using cAlgo.API.Indicators;
using cAlgo.API.Internals;
namespace cAlgo.Plugins
{
[Plugin(AccessRights = AccessRights.None)]
public class CustomWindowPlugin : Plugin
{
private Button _buttonAddTakeProfit;
private Window _window;
protected override void OnStart()
{
_buttonAddTakeProfit = new Button
{
BackgroundColor = Color.SeaGreen,
Height = 50,
Text = "Add Take Profit"
};
_buttonAddTakeProfit.Click += _buttonAddTakeProfit_Click;
_window = new Window
{
Height = 150,
Width = 150,
Padding = new Thickness(5, 10, 10, 5)
};
_window.Child = _buttonAddTakeProfit;
_window.Show();
}
private void _buttonAddTakeProfit_Click(ButtonClickEventArgs args)
{
foreach (var position in Positions)
{
if (position.TakeProfit is null)
{
position.ModifyTakeProfitPips(20);
}
}
}
protected override void OnStop()
{
// Handle Plugin stop here
}
}
}
사용자 지정 옵션 ¶
| 매개변수 | 설명 | 가능한 값 |
|---|---|---|
_buttonAddTakeProfit.Text | 버튼에 표시되는 텍스트 라벨을 설정합니다. | Add take profit |
_buttonAddTakeProfit.Height | 창에서 버튼의 높이를 지정합니다. | 50, 60, 65, 등. |
_buttonAddTakeProfit.BackgroundColor | 버튼의 배경색을 설정합니다. | color.seagreen |
_buttonAddTakeProfit.Click | 버튼이 클릭될 때 이벤트를 트리거합니다. | _buttonaddtakeprofit_click |
_window.Height | 창의 높이를 설정합니다. | 150, 200, 220, 등. |
_window.Width | 창의 너비를 설정합니다. | 150, 200, 220, 등. |
_window.Padding | 창 내부의 자식 콘텐츠 주변 공간을 정의합니다. | (5, 10, 10, 5), (8, 12, 12, 8), 등. |
_window.Child | 창 내부의 콘텐츠로 버튼을 할당합니다. | _buttonaddtakeprofit |
position.TakeProfit | 포지션에 이미 이익실현이 설정되어 있는지 확인합니다. | null |
position.ModifyTakeProfitPips | 고정 핍 값으로 설정하여 이익실현을 수정합니다. | 20, 24, 26, 등. |
사용 사례 ¶
| 사용 사례 | 시나리오 | 가치 |
|---|---|---|
| 벌크 이익실현 설정기 | 이익실현이 설정되지 않은 여러 개의 오픈 포지션이 있습니다. | 20핍의 이익실현 수준을 추가하는 반복적인 작업을 자동화합니다. |
| 반응형 거래 관리자 | 시장이 빠르게 움직이고 즉시 이익을 보호해야 합니다. | 한 번의 클릭으로 여러 포지션에 이익실현을 적용합니다. |
| 벌크 손절매 설정기 | 오픈 포지션에 20핍의 손절매를 빠르게 적용하고 싶습니다. | 각 거래를 개별적으로 편집하지 않고 일관된 위험 통제를 설정합니다. |
요약 ¶
Custom Window Plugin은 이익실현이 설정되지 않은 모든 오픈 포지션에 20핍의 이익실현 수준을 빠르게 적용할 수 있게 하여 수동 거래를 향상시킵니다. 단일 액션 버튼이 있는 간단한 플로팅 인터페이스를 통해 거래 관리에 속도와 일관성을 제공합니다.
추가 개발 세부 사항은 플러그인 문서를 참조하세요.