초보자의 질문 MQL5 MT5 MetaTrader 5 - 페이지 486

 

질문 - 테스터는 스왑을 고려합니까?

엑셀(센트 계정)에서 계산했는데 이상한 결과가 나왔다

아니요. 데이터 유형 로트 가격 MaxHigh MaxEqDrd
1 2014.06.12 09:52 매도 0.1 1.6824 0.16824 1.7179 -3.55
2 2014.06.12 15:18 매도 0.2 1.6831 0.33662 1.7179 -6.96
3 2014.06.12 17:52 매도 0.3 1.6836 0.50508 1.7179 -10.29
4 2014.06.12 19:10 매도 0.5 1.6839 0.84195 1.7179 -17.00
5 2014.06.12 23:00 매도 0.8 1.6845 1.3476 1.7179 -26.72
6 2014.06.16 09:59 매도 1.3 1.6985 2.20805 1.7179 -25.22
7 2014.06.19 09:58 매도 2.1 1.7017 3.57357 1.7179 -34.02
8 2014.06.19 11:21 매도 3.4 1.7018 5.78612 1.7179 -54.74
9 2014.06.19 20:40 매도 5.5 1.7033 9.36815 1.7179 -80.30
10 2014.06.19 22:12 매도 8.9 1.7036 15.16204 1.7179 -127.27
11 2014.06.20 05:10 매도 14.4 1.7047 24.54768 1.7179 -190.08
12 2014.06.20 05:22 매도 23.3 1.7049 39.72417 1.7179 -302.90
13 2014.06.26 12:38 매도 37.7 1.7030 64.2031 1.7179 -561.73
14 2014.06.26 15:18 매도 61.0 1.7033 103.9013 1.7179 -890.60
15 2014.06.27 06:51 매도 98.7 1.7050 168.2835 1.7179 -1273.23
16 2014.06.30 17:37 매도 100.0 1.7079 170.79 1.7179 -1000.00
17 2014.06.30 17:37 매도 59.7 1.7079 101.96163 1.7179 -597.00
18 2014.07.01 09:03 매도 100.0 1.7100 171 1.7179 -790.00
19 2014.07.01 09:03 매도 100.0 1.7100 171 1.7179 -790.00
20 2014.07.01 09:03 매도 58.4 1.7100 99.864 1.7179 -461.36
21 2014.07.01 11:30 매도 100.0 1.7110 171.1 1.7179 -690.00
22 2014.07.01 11:30 매도 100.0 1.7110 171.1 1.7179 -690.00
23 2014.07.01 11:30 매도 100.0 1.7110 171.1 1.7179 -690.00
24 2014.07.01 11:30 매도 100.0 1.7110 171.1 1.7179 -690.00
25 2014.07.01 11:30 매도 18.1 1.7110 30.9691 1.7179 -124.89
26 2014.07.02 02:33 매도 100.0 1.7145 171.45 1.7179 -340.00
27 2014.07.02 02:33 매도 100.0 1.7145 171.45 1.7179 -340.00
28 2014.07.02 02:33 매도 100.0 1.7145 171.45 1.7179 -340.00
29 2014.07.02 02:33 매도 100.0 1.7145 171.45 1.7179 -340.00
30 2014.07.02 02:33 매도 100.0 1.7145 171.45 1.7179 -340.00
31 2014.07.02 02:33 매도 100.0 1.7145 171.45 1.7179 -340.00
32 2014.07.02 02:33 매도 76.5 1.7145 131.15925 1.7179 -260.10
33 2014.07.02 11:32 매도 100.0 1.7176 171.76 1.7179 -30.00
34 2014.07.02 11:32 매도 100.0 1.7176 171.76 1.7179 -30.00
35 2014.07.02 11:32 매도 100.0 1.7176 171.76 1.7179 -30.00
36 2014.07.02 11:32 매도 100.0 1.7176 171.76 1.7179 -30.00
37 2014.07.02 11:32 매도 100.0 1.7176 171.76 1.7179 -30.00
38 2014.07.02 11:32 매도 100.0 1.7176 171.76 1.7179 -30.00
39 2014.07.02 11:32 매도 100.0 1.7176 171.76 1.7179 -30.00
40 2014.07.02 11:32 매도 100.0 1.7176 171.76 1.7179 -30.00
41 2014.07.02 11:32 매도 100.0 1.7176 171.76 1.7179 -30.00
42 2014.07.02 11:32 매도 100.0 1.7176 171.76 1.7179 -30.00
43 2014.07.02 11:32 매도 94.6 1.7176 162.48496 1.7179 -28.38
합계: 2865.5 4909.88611 -12756.34
평균 시가 -> 1.7134

최고 2014년 7월 4일 1.7179

포인트 감소 -> 0.0045
통화 손실 -> 12756.34

코드에 따른 드로우다운 -> 13823.00
테스터 보고서에 따른 드로우다운 -> 23669.03

TP -> 1.7084
포인트 단위 이익 -> 0.0050
계산에 의한 이익 - > 14465.91

보고서에 따른 이익 - > 13915.05


특히 테스터의 보고서에서 드로다운이 수렴하지 않는 이유는 무엇입니까? 이전에는 닫힌 위치 가 없었습니다!

 

차트는 이렇게 생겼습니다



 
나는 엑셀에 계산을 첨부했다 - 어쩌면 내가 거기에 바보가 되었습니까!?
파일:
Calculation.zip  104 kb
 

-Aleks- :

전역 변수는 시장에서 실제 작업과 관련이 있습니다. 테스트 정보가 필요합니다. 그래서 신경 쓰지 않았습니다.

나는 GlobalVariable에 대해 말하는 것이 아니라 전역 변수 의 수준에 대해 이야기하고 있었습니다.

-알렉스 - :

자기 자본과 잔액이 무엇인지에 관해서는 - 확실히 압니다. 하지만 감소액이 어떻게 계산되는지 - 계산할 수 없었습니다. 제 코드 예제에서 잔액과 자금을 모두 최대로 취하려고 시도했음을 알 수 있습니다. 유사하게 , 잔액과 자금을 최소한으로 취했지만 테스터로 비슷한 결과를 얻을 수는 없습니다. 대략적으로 수렴하지만 정확히는 아닙니다.

테스터에서 드롭아웃을 계산하는 공식에 실제로 들어가지는 않았지만 주문을 열기 전 잔액과 주문을 닫기 전에 최소 자금 금액의 차이를 계산해 볼 수 있습니다. 또는 최대 및 최소 자금을 모두 고려하면 최대 차액이 최대 인출액이 됩니다.

-알렉스 - :

(BalansNew<BalansMax) ProfitNew=BalansNew-BalansMax; 한 번도 실행되지 않았습니까? 새 잔고 최고치(또는 자기자본 - 어쨌든 사실이 아님)에 도달하면 막대에서 실행되지 않지만 그 순간에 나는 이익 감소 ProfitMin=ProfitNew를 수정합니다.

하루에 파일을 기록하는 것이 더 관련이 있습니다. 일반적으로 주문이 마감되는 순간이 아니라 최대 인출액에 도달하기 때문에 목표는 고문이 작동하는 데 필요한 평균 자금 금액을 계산하는 것입니다.

동의합니다. 여기서 충분히 조심하지 않았습니다.

파일에 쓰는 빈도는 순전히 개인적인 문제이지만 인출은 하루에 고려되지 않고 주문 수명 동안 고려되며 자금은 잔액이 됩니다. 이것은 정확히 테스터 차트에서 자금과 잔액 라인이 한 지점에 있는 곳입니다.

 
Alexey Viktorov :

나는 GlobalVariable에 대해 말하는 것이 아니라 전역 변수 의 수준에 대해 이야기하고 있었습니다.

분명히 내가 당신을 잘못 이해했습니다. 내 변수는 int start() 코드 실행 블록 전에 초기화되므로 덮어쓰기나 이와 유사한 문제가 없어야 합니다. 아니면 다른 이유가 있습니까?


알렉세이 빅토로프 :

테스터에서 드롭아웃을 계산하는 공식에 실제로 들어가지는 않았지만 주문을 열기 전 잔액과 주문을 닫기 전에 최소 자금 금액의 차이를 계산해 볼 수 있습니다. 또는 최대 및 최소 자금을 모두 고려하면 최대 차액이 최대 인출액이 됩니다.

주문이 많으면 각 주문을 계산하고 가장 큰 옵션을 선택하시겠습니까? 내 예에서 계산된 드로다운은 테스터의 결과에 비해 거의 2배 적은 것으로 밝혀졌으며 알고리즘에 따르면 진실과 매우 유사하지 않은 훨씬 적을 것입니다.

알렉세이 빅토로프 :

파일에 쓰는 빈도는 순전히 개인적인 문제이지만 인출은 하루에 고려되지 않고 주문 수명 동안 고려되며 자금은 잔액이 됩니다. 이것은 정확히 테스터 차트에서 자금과 잔액 라인이 한 지점에 있는 곳입니다.

테스터가 언제 감소를 고려할지는 중요하지 않습니다. 사실은 특정 날짜에 최대가 될 것이고 결과가 일치해야 하지만 일치하지 않는다는 사실입니다. 그리고 이것은 놀라운 일입니다.

한 번에 얼마나 많은 자금이 필요한지, 얼마나 자주 필요한지 이해하려면 거래 포트폴리오를 확인하기 위해 일일 인출이 필요합니다.

 

수학적으로 (결과는 23669.03의 테스터에 대해 23497.1의 감소임), 감소는 예금의 변화를 상징하는 세그먼트의 크기에 가깝습니다. 최대 자본 가치와 최소 자본 가치의 차이.

 
-Aleks- :

분명히 내가 당신을 잘못 이해했습니다. 내 변수는 int start() 코드 실행 블록 전에 초기화되므로 덮어쓰기나 이와 유사한 문제가 없어야 합니다. 아니면 다른 이유가 있습니까?


주문이 많으면 각 주문을 계산하고 가장 큰 옵션을 선택하시겠습니까? 내 예에서 계산된 드로다운은 테스터의 결과에 비해 거의 2배 적은 것으로 밝혀졌으며 알고리즘에 따르면 진실과 매우 유사하지 않은 훨씬 적을 것입니다.

테스터가 언제 감소를 고려할지는 중요하지 않습니다. 사실은 특정 날짜에 최대가 될 것이고 결과가 일치해야 하지만 일치하지 않는다는 사실입니다. 그리고 이것은 놀라운 일입니다.

한 번에 얼마나 많은 자금이 필요한지, 얼마나 자주 필요한지 이해하려면 거래 포트폴리오를 확인하기 위해 일일 인출이 필요합니다.

확실히 그런 방식은 아닙니다. 모든 주문이 아니라 첫 번째 주문이 열릴 때부터 마지막 주문이 끝날 때까지입니다. 즉, OrdersTotal() == 0에서 OrdersTotal() == 0으로

드로우다운이 결정되어야 하는 것은 첫 번째 주문이 열리는 순간부터 마지막 주문이 닫힐 때까지입니다. 실생활에서 발사는 각각 0시가 아니라 언제든지 가능하며, 날이 바뀌면 드로우다운이 발생할 수 있습니다.

다른 모든 것... 저는 긴 코드에서처럼 다른 사람의 연구를 이해하는 것을 좋아하지 않습니다. 문제를 해결하는 방법에 대해 논의할 수는 있지만 코드 예제에서는 토론할 수 없습니다. 드로다운이 어떻게 고려되는지에 대한 내 가정을 아무도 수정하지 않았다는 것이 이상할 뿐입니다...

일반적으로 나는 당신의 드로다운 계산 방식이 마음에 들지 않았습니다. 그가 뭔가를 너무 자주 인쇄하기 때문에 나중에 알아내려면 특별한 인내심이 필요합니다.

 

Karputov Vladimir :
Не кусок, а программу, которую можно скомпилировать и прогнать в режиме отладки .

번거롭게 해드려 죄송합니다. 테스터 중지 문제를 찾기 위해 프로그램을 정리하던 중 프로그램 텍스트에서 작동 알고리즘 위반을 발견했습니다. 컴파일은 정상적으로 진행되었지만 테스터는 실패 위치를 표시하지 않고 중지됨
 
Alexey Viktorov :

확실히 그런 방식은 아닙니다. 모든 주문이 아니라 첫 번째 주문이 열릴 때부터 마지막 주문이 끝날 때까지입니다. 즉, OrdersTotal() == 0에서 OrdersTotal() == 0으로

드로우다운이 결정되어야 하는 것은 첫 번째 주문이 열리는 순간부터 마지막 주문이 닫힐 때까지입니다. 실생활에서 발사는 각각 0시가 아니라 언제든지 가능하며, 날이 바뀌면 드로우다운이 발생할 수 있습니다.

따라서 고려 중인 예에서 이러한 조건은 충족됩니다. 주문이 열려 있고 각 틱 에서 마감될 때까지 추적됩니다.

계산이 실제로 최대 자산에서 최소 자산으로 간다면 이러한 분해를 통해 테스터의 수치를 재고하는 데 도움이 될 것입니다...

알렉세이 빅토로프 :

일반적으로 나는 당신의 드로다운 계산 방식이 마음에 들지 않았습니다. 그가 뭔가를 너무 자주 인쇄하기 때문에 나중에 알아내려면 특별한 인내심이 필요합니다.

고문이 일하기 위해 실제로 얼마나 많은 돈이 필요한지 궁금합니다. 손실 이익을 제외하고 주문이 열린 순간부터 청산될 때까지의 실제 손실(현재 손실).

하루에 한 번 인쇄합니다. 이것은 자주는 아니지만 특정 목적을 위해 필요합니다.

 
안녕하세요!

언뜻보기에 작업은 3 페니만큼 간단합니다. 하지만!....
표시기 창에는 진폭이 다른 "0"을 기준으로 매달린 오실레이터 라인이 있습니다.
실제로 작업은 다음과 같습니다.
- 아래에서 위로 "0"을 교차할 때 표시창의 하단 경계선에 화살표를 그리고,
- "0"을 위에서 아래로 교차할 때 표시창의 위쪽 테두리 에 화살표를 그리고,
- 표시기 창에서 오실레이터 차트를 자체 스케일링할 때 화살표는 표시기 창의 경계에 자동으로 남아 있어야 합니다.
저것들. 히스토리 차트에서 앞뒤로 스크롤하거나 수평 스케일을 변경하는 경우 화살표는 항상 표시기 창의 경계에 자동으로 남아 있어야 합니다.

큰 요청 은 조언을 제공하지 마십시오 , "재정적으로 도움")). 우리는 그러한 기능을 구현하는 작업 코드의 예 또는 이에 대한 링크가 필요합니다.

미리 감사드립니다!
사유: