if (mode== MODE_LOW ) { if (m_position.PriceOpen()<price) price=m_position.PriceOpen(); } } if (price== DBL_MIN || price== DBL_MAX ) price= 0 ; return (price); }
이제 지정된 유형의 위치가 설정되지 않은 경우 가격 "0"이 반환됩니다. 이전에는 DBL_MIN 또는 DBL_MAX 값을 반환 할 수 있었습니다.
매수 포지션을 여는 기능을 수정했습니다. 이전에는 이러한 불리한 옵션이 가능했습니다. 여러 매수가 연속으로 열렸고 각각의 후속 매수가 이전 매수보다 더 나쁜 가격으로 열렸을 때 추세 반전에 도달하면 가시적인 손실이 발생했습니다.
이제 수정되었습니다(예, 예, 예 - 조건 기호에 오류가 있음 - "<" 기호가 있기 전에:
return ; } //--- the position of BUY can't be open below the lowest double price_open_low=FindPosition( POSITION_TYPE_BUY , MODE_LOW ); if (price_open_low!= 0 ) if (price_open_low > m_symbol. Ask ()) return ;
새로운 입력 매개변수 " InpCoefProtectionProfit " 도입 - m_account.Equity()/m_account.Balance()(자본을 잔액으로 나눈 값)로 계산됩니다.
자산이 "InpCoefProtectionProfit" 시간만큼 잔액을 초과할 때 - 우리는 모든 포지션을 닫습니다 - 따라서 우리는 이익을 보호합니다:
//--- we work only at the time of the birth of new bar staticdatetime dtPrevBars= 0 ; //--- protection of profit if (m_account.Equity()/m_account.Balance()>InpCoefProtectionProfit) bCloseAll= true ; //--- trailing stop (at every tick) if (! RefreshRates ()) return ; TrailingStop();
이제 테스트:
Ivan 1.004 USDJPY, M15, 기간 2016.01.01~2017.02.13
지금은 다음과 같이 할 것입니다. Ivan 버전 "1.003" :
작업이 한창입니다 - 좋습니다!
그러나 나는 아직 작품을 볼 수 없습니다 - 나는 Forex에 대한 계정이 없습니다 - 거래소에서만 있고 고문은 거기에서 일하지 않습니다.
작업이 한창입니다 - 좋습니다!
그러나 나는 아직 작품을 볼 수 없습니다 - 나는 Forex에 대한 계정이 없습니다 - 거래소에서만 있고 고문은 거기에서 일하지 않습니다.
그리고 나는 그 반대입니다. 이제 거래소에 연결되지 않습니다. 그리고 그것은 그 노래에서처럼 될 것입니다:
당신은 선원 나는 선원
너는 어부 나는 어부
당신은 육지에, 나는 바다에
우리는 결코 만나지 않을 것입니다
추가됨:
거래소에서의 거래는 상계이며 내 고문은 헤징 전용입니다(거래소 계정에 연결하려고 할 때 오류 출력에 표시된 대로:
). 따라서 교환은 파리에서 합판의 휘파람과 함께 날아갑니다.
그리고 나는 그 반대입니다. 이제 거래소에 연결되지 않습니다. 그리고 그것은 그 노래에서처럼 될 것입니다:
당신은 선원 나는 선원
너는 어부 나는 어부
당신은 육지에, 나는 바다에
우리는 결코 만나지 않을 것입니다
추가됨:
거래소에서의 거래는 상계이며 내 고문은 헤징 전용입니다(거래소 계정에 연결하려고 할 때 오류 출력에 표시된 대로:
). 따라서 교환은 파리에서 합판의 휘파람과 함께 날아갑니다.
예, 이해합니다. Forex가 내 4개 미만이라는 것입니다. 나중에 데모에서 열 수 있습니다. 흥미로운 경우 아이디어를 남깁니다.
전문가가 있는 누군가가 MT5 테스터 사용법을 가르쳐줄 수 있습니다. 저는 음성 모드에서 많은 시간을 들이지 않을 것입니다.
아니요, 제 생각에 이 접근 방식은 그다지 좋지 않습니다. 많은 사람들이 있고 모두가 다른 쌍과 다른 시간대를 좋아합니다. 입력 매개변수에 바로 작성하는 것이 좋습니다.
이반 버전 "1.004" :
작업이 한창입니다 - 좋습니다!
그러나 나는 아직 작품을 볼 수 없습니다 - 나는 Forex에 대한 계정 이 없습니다 - 거래소에서만 가능하며 고문은 거기에서 일하지 않습니다.
이반 버전 "1.005" :
{
if (m_position.PriceOpen()<price)
price=m_position.PriceOpen();
}
}
if (price== DBL_MIN || price== DBL_MAX )
price= 0 ;
return (price);
}
이제 수정되었습니다(예, 예, 예 - 조건 기호에 오류가 있음 - "<" 기호가 있기 전에:
}
//--- the position of BUY can't be open below the lowest
double price_open_low=FindPosition( POSITION_TYPE_BUY , MODE_LOW );
if (price_open_low!= 0 )
if (price_open_low > m_symbol. Ask ())
return ;
sl=m_symbol.NormalizePrice(sl);
double tp= 0.0 ;
략
추가됨:

이반 버전 "1.006" :
static datetime dtPrevBars= 0 ;
//--- protection of profit
if (m_account.Equity()/m_account.Balance()>InpCoefProtectionProfit)
bCloseAll= true ;
//--- trailing stop (at every tick)
if (! RefreshRates ())
return ;
TrailingStop();