RiskPanel Risk Based Lot Calculator and Trader MT5
- 유틸리티
-
Ibrahim Yahya
고객님의 규칙을 정확히 따르는 MetaTrader 5 도구를 개발합니다. 엑스퍼트 어드바이저(EA), 트레이드 매니저, 트레이드 카피어 등 고객님의 리스크를 기준으로 매 거래의 랏을 계산하고, VPS에서 무인으로 끝까지 관리하는 도구입니다.
제가 개발하고 운영해 온 것: - 버전: 1.0
- 활성화: 5
RiskPanel은 MetaTrader 5용 위험 기반 랏 계산기이자 원클릭 거래 패널로, 하나의 규칙에 맞춰 만들어졌습니다. 선택한 것 이상으로 위험을 지지 않는다. 위험(계좌의 비율 또는 고정 금액)과 스톱을 선택하면, RiskPanel은 스톱에 도달했을 때 손실이 선택한 금액 이하가 되도록 랏을 계산하고, 브로커의 거래량 단위에 맞춰 내림하여 클릭하기 전에 차트에 보여 줍니다. 이후 BUY 또는 SELL을 누르면 그 스톱(원하면 이익 실현 포함)으로 거래가 열립니다. 무엇을 거래할지 결정하지 않으며 신호도 주지 않습니다.
계좌를 보호하는 방법
- 스톱에서 계산한 랏. 위험과 스톱 거리를 설정합니다. 실제 진입 가격과 실제 스톱 가격 사이의 손실은 근사 공식이 아니라 터미널 자체의 손익 계산으로 산출되므로, 외환, 금속, 지수, 모든 계약 크기와 모든 계좌 통화에 맞습니다.
- 항상 내림. 랏은 브로커의 거래량 단위에 맞춰 내림되며 절대 올림되지 않습니다. 그 뒤 정확한 랏으로 다시 계산하므로 스톱에서의 손실은 선택한 금액을 넘지 않습니다(슬리피지, 수수료, 스왑 제외. 아래 한계 참조).
- 위험 상한. 최대 위험(기본값은 기준의 5%)은 퍼센트 모드와 금액 모드 모두에 적용됩니다. 위험은 이를 넘을 수 없습니다.
- 증거금 확인. 주문 전에 거래에 필요한 증거금을 여유 증거금과 비교합니다.
- 이유와 함께 막힌 버튼. 한쪽 거래가 불가능하면(위험이 최소 랏에 비해 너무 작음, 스톱이 브로커 기준보다 너무 가까움, 증거금 부족, 스톱 선이 반대쪽에 있음) 해당 버튼이 회색이 되고 패널이 이유를 한 줄로 표시합니다.
- 자체 점검. 시작할 때 패널이 자체 계산을 점검하고(11개 항목), 첫 틱에서 브로커의 가격 계산과 대조해 12개 사례(BUY와 SELL, 위험 3종, 스톱 크기 2종)를 추가로 점검합니다. 하나라도 실패하면 버튼이 비활성화되고 경고가 표시됩니다.
- 확인. 각 주문을 보내기 전에 선택적으로 확인 창이 뜹니다.
설정하는 것과 보이는 것
- 위험. 잔고, 자산(Equity) 또는 여유 증거금의 비율, 또는 고정 금액.
- 스톱. 포인트 단위 거리, 또는 차트 위의 드래그 가능한 선(BUY는 가격 아래, SELL은 위).
- 목표. 스톱 거리의 배수 R(0 = 이익 실현 없음). 브로커가 너무 가깝다고 거부할 목표는 제외됩니다.
- 표시되는 정보. 위험 금액, 스톱 거리, BUY와 SELL의 랏 / SL / TP, 스톱에서의 손실, 목표에서의 이익, 필요 증거금과 여유 증거금.
- 차트에서. 예정된 스톱과 목표가 점선으로 그려집니다. 입력값은 종목별로 기억됩니다. 패널은 최소화할 수 있습니다.
사용 방법
- 거래하려는 종목의 차트에 RiskPanel을 적용합니다(시간 단위 무관).
- 터미널과 EA 설정에서 알고리즘 거래를 허용합니다.
- 위험 모드와 값을 고른 다음 스톱(포인트 또는 선)과 목표를 정합니다.
- 패널에서 랏, 스톱에서의 손실, 증거금을 확인한 뒤 BUY 또는 SELL을 누릅니다(확인 창이 뜨면 승인).
- 주문에 손절(Stop Loss)과 이익 실현(Take Profit)이 포함되므로 브로커가 이를 보유합니다. 이후 RiskPanel은 거래를 관리하지 않습니다.
전략 테스터에서 기본 입력값으로 실행하면 RiskPanel이 작동을 보여 주기 위해 가끔 데모 거래를 엽니다. BUY와 SELL을 번갈아, 자신의 매직 넘버 포지션이 없을 때 약 48개 봉마다, BUY / SELL 버튼과 같은 코드로 엽니다. 테스터에서만, 위험이 최소 랏보다 작으면 최소 랏이 사용됩니다. 이는 전략 테스터에서만 일어나며 실계좌나 데모 계좌에서는 절대 일어나지 않습니다. 그곳에서는 버튼을 누를 때만 거래합니다.
솔직한 한계 (꼭 읽어 주세요)
- 슬리피지, 수수료, 스왑은 랏 계산에 포함되지 않습니다. 실제 스톱 체결에서는 선택한 금액보다 조금 더 잃을 수 있습니다.
- 넷팅 계좌에서는 새 거래가 기존 포지션에 더해지고, 손절과 이익 실현은 포지션 전체에 적용됩니다.
- 브로커의 종목별 총 거래량 한도(SYMBOL_VOLUME_LIMIT)는 확인하지 않습니다. 브로커가 해당 주문을 거부하며 이유는 로그에 기록됩니다.
- 시장가 주문에서 스톱을 거부하는 브로커는 주문에 손절과 이익 실현이 포함되어 있으므로 주문을 거부합니다.
- 패널의 입력란, 모드 버튼, 드래그 가능한 선은 데모 차트에서 스크립트 기반 UI 테스트로 검증했습니다.
- RiskPanel은 무엇을 거래할지 결정하지 않고, 신호를 주지 않으며, 수익을 약속하지 않습니다.
입력 매개변수
| 매개변수 | 기본값 | 기능 |
| 위험 | ||
| Start in % mode (false = fixed money) | true | false = 금액 모드로 시작 |
| Risk, % of the base | 1.0 | % 모드에서 사용 |
| Risk in account currency (money mode) | 50 | 금액 모드에서 사용 |
| What the % is taken from | Balance | Balance, Equity 또는 Free margin |
| Hard cap, % of the base, for both modes (0 = no cap) | 5.0 | 위험이 이를 넘지 않음 |
| 스톱과 목표 | ||
| Start with the draggable stop line instead of points | false | true = 차트의 빨간 선을 드래그 |
| Stop distance in points | 300 | |
| Take profit = this many times the stop distance (0 = no take profit) | 2.0 | 스톱의 R 배수. 0 = 없음 |
| 거래 | ||
| Magic number of the trades opened here | 770077 | 여기서 연 거래를 구분 |
| Order comment | RiskPanel | |
| Max slippage, points | 30 | |
| Ask before sending an order | true | 확인 창 |
| Draw the planned stop / target levels on the chart | true | |
| Remember the panel values per symbol (global variables) | true | |
| 표시 | ||
| Recolour this chart dark | false | |
| Save a screenshot (MQL5 Files folder) 6 s after start | false | |
| Screenshot file name suffix | live | |
| Live chart: run a scripted test of the edit boxes, buttons and the line, then restore the values | false | 테스트 보조 기능, 꺼 두세요 |
| 전략 테스터 전용 | ||
| 0 none, 1 = open one BUY, 2 = open one SELL (through the same code as the button) | 0 | 0 = 위에서 설명한 데모 거래 |
자주 묻는 질문
RiskPanel은 신호를 주거나 무엇을 거래할지 결정하나요?
아니요. 종목, 방향, 위험, 스톱은 직접 선택합니다. 랏을 계산하고 주문을 보낼 뿐입니다.
손실이 선택한 위험보다 클 수 있나요?
랏은 스톱 가격 자체를 기준으로 계산됩니다. 실제 스톱 체결에서는 슬리피지, 수수료, 스왑 또는 갭 때문에 손실이 조금 늘 수 있습니다. 그래서 한계를 위에 밝혀 두었습니다.
버튼이 왜 회색인가요?
해당 쪽이 막혀 있으며 패널이 이유를 한 줄로 알려 줍니다. 예를 들어 위험이 최소 랏에 비해 너무 작거나, 스톱이 브로커 기준보다 너무 가깝거나, 증거금이 부족한 경우입니다. 아무것도 전송되지 않습니다.
랏이 예상보다 작은 이유는 무엇인가요?
랏은 거래량 단위로 내림되고 위험 상한이 위험을 제한합니다. 선택한 금액보다 더 잃을 랏은 절대 사용되지 않습니다.
헤징 계좌와 넷팅 계좌 모두 되나요?
둘 다 됩니다. 넷팅 계좌에서는 새 거래가 기존 포지션에 더해지고 손절과 이익 실현은 포지션 전체에 적용됩니다.
거래가 열린 뒤에도 관리하나요?
아니요. 손절과 이익 실현은 주문과 함께 전송되며 브로커가 보유합니다.
거래가 수익을 내게 해 주나요?
어떤 도구도 그것을 약속할 수 없습니다. RiskPanel은 각 거래의 예상 손실을 선택한 크기로 유지합니다. 수익 여부는 진입과 청산에 달려 있습니다.
VPS가 필요한가요?
아니요. RiskPanel은 버튼을 누를 때만 동작하므로 터미널이 켜져 있으면 충분합니다.
