[ARCHIVE!] 포럼을 어지럽히 지 않도록 초보자 질문. 프로, 놓치지 마세요. 너 없이는 아무데도 - 4. - 페이지 571

 
xant :

조언 부탁드립니다.

내 Expert Advisor에서 출구 계산은 누적 이익에서 나옵니다. 예를 들어, 어떤 시점에서 자기자본 = 잔액인 경우 현재 자기자본이 이 초기 자본을 초과할 때 고문은 모든 거래를 마감합니다. 거래 수에 관계없이 모든 거래를 종료합니다.

하나의 통화 쌍만 있기 때문에 테스터에서 쉽습니다.

실제로 거래는 여러 통화로 이루어지며 각 통화는 별도로 고려해야 합니다. 예: 일부 통화 쌍에 대한 미결 거래가 없으면 변수==0입니다. 그리고 같은 방식으로 이 쌍에 대한 마감된 거래를 추적하고 누적된 이익이 주어진 금액만큼 이 쌍의 열린 주문으로 인한 손실을 초과할 때까지 기다려야 합니다.

나는 교과서에서 다른 통화로 누적된 이익에 대한 회계 분할을 구성하는 데 사용할 수 있는 기능을 찾을 수 없습니다. 아는 사람 말해줘 고맙습니다.


회계 정리해야 합니다. AccountEquity () 및 AccountBalance () 함수는 합계만 계산하며, 하나의 통화 쌍에 대해 잔액과 자본이 아니라 이 쌍의 모든 주문에 대한 총 이익을 계산해야 합니다.

일반적으로 올빼미에서 이것은 잔액 보호 기능으로 모든 거래를 닫고 인출액이 너무 크면 어드바이저를 끕니다.

 

///회계를 정리해야 합니다. AccountEquity() 및 AccountBalance() 함수는 합계만 고려합니다.

글쎄, 우리는 무엇에 대해 이야기하고 있습니까? 조직하는 방법?

Advisor가 다른 터미널에서 시작되기 때문에 파일에 쓰고 싶지 않습니다. 그가 서 있는 통화 쌍만 고려하는 것이 필요합니다. 사이클 시작 후 마감된 주문의 손익을 계산하는 방법은 무엇입니까?

사이클은 첫 번째 항목에서 시작되며 이익 또는 손실의 0에서 편차가 이미 시작되고 있습니다. 이 쌍의 주문이 닫힐 때마다 주문을 닫은 결과가 버퍼에 추가되어야 합니다. 열린 것에 대한 버퍼 + 이익의 값이 지정된 값보다 커지는 즉시 모든 트랜잭션을 닫으라는 명령이 전송됩니다.

알고리즘은 나에게 매우 명확합니다. 어떻게 계산하는지 이해가 안됩니다. 나는 초보자입니다)

 
xant :

///회계를 정리해야 합니다. AccountEquity() 및 AccountBalance() 함수는 합계만 고려합니다.

글쎄, 우리는 무엇에 대해 이야기하고 있습니까? 조직하는 방법?

Advisor가 다른 터미널에서 시작되기 때문에 파일에 쓰고 싶지 않습니다. 그가 서 있는 통화 쌍만 고려하는 것이 필요합니다. 사이클 시작 후 마감된 주문의 손익을 계산하는 방법은 무엇입니까?

사이클은 첫 번째 항목에서 시작되며 이익 또는 손실의 0에서 편차가 이미 시작되고 있습니다. 이 쌍의 주문이 닫힐 때마다 주문을 닫은 결과가 버퍼에 추가되어야 합니다. 열린 것에 대한 버퍼 + 이익의 값이 지정된 값보다 커지는 즉시 모든 트랜잭션을 닫으라는 명령이 전송됩니다.

알고리즘은 나에게 매우 명확합니다. 어떻게 계산하는지 이해가 안됩니다. 나는 초보자입니다)


기능
주문 이익 ( )
그리고 왜 파일에 있습니까? 그냥 변수.
 

리고니치 ,

정확히 말하면 (OrderProfit()+OrderCommission()+OrderSwap()

그렇다면 마감된 주문에서 정보를 가져오는 방법은 무엇입니까?

닫힌 MODE_HISTORY에서 OrderSelect()를 사용하여 주문을 선택 하지만 올바른 주문을 선택하려면 어떻게 해야 합니까?

내 상태 이후에 폐쇄된 것을 역사에서 가져올 수 있다면 당연히 필요한 모든 것을 취하여 요약할 것입니다. 하지만 불행히도 어떻게 해야 하는지 이해가 되지 않습니다.

 
7Konstantin7 :

무엇이 잘못되었는지 알려주세요, 저는 mql을 처음 접합니다

입력 TimeBar_t = Minute() ; 대괄호가 필요한 곳에 있는지 이해할 수 없습니다.

정수 ( )
프로그램 시작 시점에서 마지막으로 알려진 서버 시간의 현재 분(0,1,2,..59)을 반환합니다(이 값은 프로그램 실행 중에 변경되지 않음).
참고: 테스트할 때 마지막으로 알려진 서버 시간 이 시뮬레이션됩니다.
따라서 귀하의 조건은 시작하는 순간에만 충족됩니다.
 
xant :

리고니치 ,

정확히 말하면 (OrderProfit()+OrderCommission()+OrderSwap()

그렇다면 마감된 주문에서 정보를 가져오는 방법은 무엇입니까?

닫힌 MODE_HISTORY에서 OrderSelect()를 사용하여 주문을 선택하지만 올바른 주문을 선택하려면 어떻게 해야 합니까?

내 상태 이후에 폐쇄된 것을 역사에서 가져올 수 있다면 당연히 필요한 모든 것을 취하여 요약할 것입니다. 하지만 불행히도 어떻게 해야 하는지 이해가 되지 않습니다.


뭐가 필요하세요? 예를 들어, 조언자가 상품을 처음 주문한 날짜를 기억하고 그 이후에 열린 모든 날짜를 선택하고 조건에 따라 마감한 후 변수 값을 재설정하고 새(현재) 값 기억하십시오.
 
xant :

조언 부탁드립니다.

내 Expert Advisor에서 출구 계산은 누적 이익에서 나옵니다. 예를 들어, 어떤 시점에서 자기자본 = 잔액인 경우 현재 자기자본이 이 초기 자본을 초과할 때 고문은 모든 거래를 마감합니다. 거래 수에 관계없이 모든 거래를 종료합니다.

하나의 통화 쌍만 있기 때문에 테스터에서 쉽습니다.

실제로 거래는 여러 통화로 이루어지며 각 통화는 별도로 고려해야 합니다. 예: 일부 통화 쌍에 대한 미결 거래가 없으면 변수==0입니다. 그리고 같은 방식으로 이 쌍에 대한 마감된 거래를 추적하고 누적된 이익이 주어진 금액만큼 이 쌍의 공개 주문으로 인한 손실을 초과할 때까지 기다려야 합니다.

나는 교과서에서 다른 통화로 누적된 이익에 대한 회계 분할을 구성하는 데 사용할 수 있는 기능을 찾을 수 없습니다. 아는 사람 말해줘 고맙습니다.


여기 https://www.mql5.com/ru/forum/131859/page3#434223https://www.mql5.com/ru/forum/131859/page3#434222
 
포지션을 여는 조건을 작성하는 데 도움이 됩니다.

계획된 왕자님에 따라 거래를 시작하기 위한 추가 조건을 작성할 수 없습니다.

TP 또는 SL에서 임의의 위치를 닫은 후 반대 위치로 다시 열 필요가 있습니다.

예: 매도 포지션이 마감된 경우 SL이 다시 매도 포지션을 개설하고 매수합니다.

다음은 EA의 2가지 조건입니다.

구매 조건

만약 (구매)
{
if (takeprofit!=0) TP = NormalizeDouble(Ask + takeprofit*Point,Digits); elseTP=0;
if (stoploss!=0) SL = NormalizeDouble(Ask - stoploss*Point,Digits); elseSL=0;
if(NumberOfPositions(Symbol(),OP_BUY,Magic)<MaxOrders)OPENORDER("구매");
}

판매 조건

만약 (판매)
{
if (takeprofit!=0) TP = NormalizeDouble(Bid - takeprofit*Point,Digits); elseTP=0;
if (stoploss!=0) SL = NormalizeDouble(Bid + stoploss*Point,Digits); elseSL=0;
if(NumberOfPositions(Symbol(),OP_SELL,Magic)<MaxOrders)OPENORDER("판매");
}

여기에 관련된 사람은 추가 조건을 작성하는 데 도움이됩니다.
파일:
sellbuy_4.mq4  3 kb
 
rigonich 귀하의 조건이 맞지 않습니다((창고가 충분한 동안 주문이 끝없이 열립니다.
 
rigonich :

왼쪽으로 이동하려면 - F12, 오른쪽으로 - 모르겠습니다.

rigonich 감사합니다. 완벽하게 프롬프트되었습니다! 필요한 것만!
사유: