코딩 도움말 - 페이지 36

 

STOPLOSS에 대한 손이 필요합니다.

mladen:
케말44

다음은 코드에서 함수를 사용하는 방법을 설명하는 스레드에 대한 링크입니다. https://www.mql5.com/en/forum/173005

사용 방법이 거기에 아주 잘 설명되어 있습니다.

친애하는 믈라덴,

백 테스팅할 때 BreakEven-Stoplos가 작동하는 것처럼 보이지만 실제 계정이 제대로 작동하지 않는 한

전문가 파일을 살펴보고 무엇이 문제인지 말씀해 주시겠습니까?

미리 감사합니다

파일:
xpexpert.txt  24 kb
 

...

케말

어떤 오류가 기록되어 있는지 터미널의 전문가 탭에서 확인하십시오 .

입력 로직이 없어서 확인할 수 없습니다.

kemal44:
친애하는 믈라덴,

백 테스팅할 때 BreakEven-Stoplos가 작동하는 것처럼 보이지만 실제 계정이 제대로 작동하지 않는 한

전문가 파일을 살펴보고 무엇이 문제인지 말씀해 주시겠습니까?

미리 감사합니다
 
mladen:
케말

어떤 오류가 기록되어 있는지 터미널의 전문가 탭에서 확인하십시오.

입력 로직이 없어서 확인할 수 없습니다.

여기에 매수 매도 논리가 있는 전문가가 있습니다.

문제는 손익분기점 손실입니다.

내가 손익분기점으로 하고 싶은 것은 이익이 진입점에서 5핍 상승하면 포트폴리오를 보호하기 위해 손절매를 진입점으로 설정해야 한다는 것입니다.

미리 감사합니다

파일:
xpexpert_1.txt  24 kb
 

...

손절매의 최소 거리는 심볼마다, 브로커마다 다르며 순간마다 다를 수 있으므로 손익분기점을 설정하기 전에 다음과 같은 검사를 추가하십시오(이것은 다음과 같은 일반적인 예입니다. 주문은 구매 주문이며 판매 주문 과 매우 유사하게 작성할 수 있습니다.):

double minimalDistance = MarketInfo(Symbol(),MODE_STOPLEVEL)*Point;

if (OrderType()=OP_BUY && (Bid-OrderOpenPrice())>=minimalDistance)

... your code for setting stop loss

추신: 이것은 브로커가 ECN 브로커가 아닌 경우에 모두 유효합니다(최신 변경 사항에 따라 - 빌드 419 이상). 브로커가 ECN 브로커인 경우 MarketInfo(Symbol(),MODE_STOPLEVEL)은 최신 빌드에서 0을 반환하고 정지 손실의 최소 거리(있는 경우)를 조정하기 위해 몇 가지 실험을 해야 합니다.

kemal44:
여기에 매수 매도 논리가 있는 전문가가 있습니다.

문제는 손익분기점 손실입니다.

내가 손익분기점으로 하고 싶은 것은 이익이 진입점에서 5핍 상승하면 포트폴리오를 보호하기 위해 손절매를 진입점으로 설정해야 한다는 것입니다.

미리 감사합니다
 
mladen:
손절매의 최소 거리는 심볼마다, 브로커마다 다르며 순간마다 다를 수 있으므로 손익분기점을 설정하기 전에 다음과 같은 검사를 추가하십시오(이것은 다음과 같은 일반적인 예입니다. 주문은 구매 주문이며 판매 주문과 매우 유사하게 작성할 수 있습니다.
double minimalDistance = MarketInfo(Symbol(),MODE_STOPLEVEL)*Point;

if (OrderType()=OP_BUY && (Bid-OrderOpenPrice())>=minimalDistance)

... your code for setting stop loss

추신: 이것은 브로커가 ECN 브로커가 아닌 경우에 모두 유효합니다(최신 변경 사항에 따라 - 빌드 419 이상). 브로커가 ECN 브로커인 경우 MarketInfo(Symbol(),MODE_STOPLEVEL)은 최신 빌드에서 0을 반환하고 정지 손실의 최소 거리(있는 경우)를 조정하기 위해 몇 가지 실험을 해야 합니다.

감사합니다 ;

거리는 좋은 생각입니다 ,

ECN 브로커 규칙에 대해 잘 모릅니다. 브로커는 현지 회사입니다.

 

...

케말44

귀하의 중개인에 대해 다음을 시도하십시오. 확인하는 간단한 방법은 수동으로 주문을 여는 것입니다. 그러나 그렇게 할 때 손절매 설정을 시도하거나 이익을 얻으 십시오. 주문 열기 대화 상자에서 해당 필드가 비활성화된 경우(아래 그림과 같이) 또는 0을 제외한 값을 설정하면 오류가 발생합니다. 그러면 브로커는 "ECN/STP" 유형의 브로커입니다.

kemal44:
감사합니다 ;

거리는 좋은 생각입니다 ,

ECN 브로커 규칙에 대해 잘 모릅니다. 브로커는 현지 회사입니다.
파일:
order_open.gif  22 kb
 
mladen:
케말44

중개인의 경우 - 다음을 시도하십시오. 확인하는 간단한 방법은 수동으로 주문을 여는 것입니다. 그러나 그렇게 할 때 손절매 설정을 시도하거나 이익을 얻으십시오. 열린 주문 대화 상자에서 해당 필드가 비활성화된 경우(아래 그림과 같이) 또는 0을 제외한 값을 설정한 경우 오류가 발생하면 브로커는 "ECN/STP" 유형의 브로커입니다.

내 거래 창은 위의 그림과 정확히 동일합니다. 내 보커가 "ECN / STP" 유형이라는 것을 이해하지 못했습니다.

감사합니다

그 동안에 MT4에서 제공하는 채널(StdDev 등)을 표시기 또는 EA 기반 코드로 차트에서 자동으로 가져올 수 있습니까? 코딩 방법을 모르겠습니다. 샘플 코드를 얻을 수 있도록 도와주시겠습니까?

미리 감사합니다

 

...

케말44

"채널"에 대한 질문을 이해했는지 확실하지 않지만 시도해 보겠습니다.

그들이 제공하는 기능을 사용하여 지표에 내장된 모든 메타 트레이더를 사용할 수 있습니다. 예를 들어 표준 편차의 경우 구문은 다음과 같습니다.

[/TR]

[TR]

[TD="폭: 100%"]MA 이동.

[TR]

[TD] ma_method

[TD] - [TD="너비: 100%"]MA 방법. 이동 평균 메서드 열거 값 중 하나일 수 있습니다.

[TR]

[ TD ] 적용 가격 [TD] - [TD="width: 100%"]적용 가격입니다. 적용된 가격 열거 값 중 하나일 수 있습니다.

[TR]

[TD] 시프트 [TD] - [TD="width: 100%"]지시자 버퍼에서 가져온 값의 인덱스(주어진 기간 전에 현재 막대를 기준으로 이동).
이중 iStdDev(

[/TD]

문자열 기호, int timeframe, int ma_period, int ma_shift, int ma_method, int apply_price, int shift)[/TD]

[/TR]

[/테이블]

표준 편차 표시기를 계산하고 해당 값을 반환합니다. 매개변수:

[표="클래스: 문서 매개변수"]

기호 [/TD] - [/TD] 지표를 계산하는 데 사용해야 하는 데이터의 기호입니다. NULL은 현재 기호를 의미합니다.[/TD]

[/TR]

기간 [/TD] - [/TD] 기간. Timeframe 열거형 값 중 하나일 수 있습니다. 0은 현재 차트 기간을 의미합니다.[/TD]

[/TR]

ma_period [/TD] - [/TD] MA 기간. ma_shift -

견본:

이중 val=iStdDev(NULL,0,10,0,MODE_EMA,PRICE_CLOSE,0);

_______________________________________________________

다른 내장 표시기(이것:

따라서 다른 표시기, 스크립트 또는 EA에서 함수 호출로 이들 중 하나를 사용할 수 있습니다.

내장된 표시기 값 중 일부를 차트에 표시하려면 일반 표시기에서와 같이 그리기 버퍼를 사용해야 하며 위 기능 중 일부의 값을 그리기 버퍼에 할당하면 차트에 표시됩니다. EA에는 드로잉 버퍼가 없으므로 EA의 드로잉 버퍼를 사용하여 그렇게 할 수 없습니다(오브젝트를 사용해야 하지만 완전히 다른 이야기입니다).

kemal44:
내 거래 창은 위의 그림과 정확히 동일합니다. 내 보커가 "ECN / STP" 유형이라는 것을 이해하지 못했습니다.

감사합니다

그 동안에 MT4에서 제공하는 채널(StdDev 등)을 표시기 또는 EA 기반 코드로 차트에서 자동으로 가져올 수 있습니까? 코딩 방법을 모르겠습니다. 샘플 코드를 얻을 수 있도록 도와주시겠습니까?

미리 감사합니다
 
mladen:
케말44

"채널"에 대한 질문을 이해했는지 확실하지 않지만 시도해 보겠습니다.

그들이 제공하는 기능을 사용하여 지표에 내장된 모든 메타 트레이더를 사용할 수 있습니다. 예를 들어 표준 편차의 경우 구문은 다음과 같습니다.

[/TR]

[TR]

[TD="폭: 100%"]MA 이동.

[TR]

[TD] ma_method [TD] - [TD="너비: 100%"]MA 방법. 이동 평균 메서드 열거 값 중 하나일 수 있습니다.

[TR]

[ TD ] 적용 가격 [TD] - [TD="width: 100%"]적용 가격입니다. 적용된 가격 열거 값 중 하나일 수 있습니다.

[TR]

[TD] 시프트 [TD] - [TD="width: 100%"]지시자 버퍼에서 가져온 값의 인덱스(주어진 기간 전에 현재 막대를 기준으로 이동).
이중 iStdDev([/TD] 문자열 기호, int timeframe, int ma_period, int ma_shift, int ma_method, int apply_price, int shift)[/TD]

[/TR]

[/테이블]

표준 편차 표시기를 계산하고 해당 값을 반환합니다. 매개변수:

[표="클래스: 문서 매개변수"]

기호 [/TD] -[/TD] 지표를 계산하는 데 사용해야 하는 데이터의 기호입니다. NULL은 현재 기호를 의미합니다.[/TD]

[/TR]

기간 [/TD] -[/TD] 기간. Timeframe 열거형 값 중 하나일 수 있습니다. 0은 현재 차트 기간을 의미합니다.[/TD]

[/TR]

ma_period [/TD] -[/TD] MA 기간. ma_shift -

견본:

이중 val=iStdDev(NULL,0,10,0,MODE_EMA,PRICE_CLOSE,0);

_______________________________________________________

다른 내장 표시기(이것:

따라서 다른 표시기, 스크립트 또는 EA에서 함수 호출로 이들 중 하나를 사용할 수 있습니다.

내장된 표시기 값 중 일부를 차트에 표시하려면 일반 표시기에서와 같이 그리기 버퍼를 사용해야 하며 위 기능 중 일부의 값을 그리기 버퍼에 할당하면 차트에 표시됩니다. EA에는 드로잉 버퍼가 없으므로 EA의 드로잉 버퍼를 사용하여 그렇게 할 수 없습니다(오브젝트를 사용해야 하지만 완전히 다른 이야기입니다).

내가 의미하는 Sdv 채널은 아래와 같은 채널입니다.

그건 그렇고, 신속한 응답을 주셔서 감사합니다.

파일:
xxx.gif  13 kb
 

포물선 SAR이 있는 EA

포물선형 SAR로 거래하는 아이디어가 있습니다. Parabolic SAR로 EA를 만들고 싶지만 지금까지 좋은 결과를 얻지 못했습니다. 따라서 Parabolic SAR이 포함된 Idea가 있으면 더 좋게 만들겠습니다. 내가 만드는 마지막은 그 이익을 만들 수 있습니다. 그러나 자본은 균형과 결코 같지 않습니다.

파일: