KimIV의 유용한 기능 - 페이지 97

 

터미널에는 등거리 채널 을 설정할 수 있는 기능이 있으며 추세선을 그리는 대신 설정할 수 있습니다.

여기에 추세선 설정과 유사한 기능이 있습니다.

 // установка равноудалённого канала
void SetСhannel ( string nm , datetime t1 , double p1 , datetime t2 , double p2 , datetime t3 , double p3 , color cl = Red , int st = 0 , int wd = 1 , bool ry = False ) {
// Параметры:
// nm - наименование               (  ""  - текущее время)
// t1,t2,t3 - время открытия бара  (  0   - Time[10]
// p1,p2,p3 - ценовой уровень      (  0   - Low[10])
// cl - цвет линий
// st - стиль линий                (  0   - простая линия)
// wd - ширина линий               (  1   - по умолчанию)
// ry - луч                        (False - по умолчанию)

   if ( nm = = "" ) nm = TimeToStr ( TimeCurrent ( ) , TIME_DATE | TIME_SECONDS ) ;
   if ( ObjectFind ( nm ) < 0 ) {
   ObjectCreate ( nm , OBJ_CHANNEL , 0 , t1 , p1 , t2 , p2 , t3 , p3 ) ;
   ObjectSet ( nm , OBJPROP_COLOR , cl ) ;
   ObjectSet ( nm , OBJPROP_STYLE , st ) ;
   ObjectSet ( nm , OBJPROP_WIDTH , wd ) ;
   ObjectSet ( nm , OBJPROP_RAY , ry ) ;
   }
   ObjectSet ( nm , OBJPROP_TIME1 , t1 ) ;
   ObjectSet ( nm , OBJPROP_PRICE1 , p1 ) ;
   ObjectSet ( nm , OBJPROP_TIME2 , t2 ) ;
   ObjectSet ( nm , OBJPROP_PRICE2 , p2 ) ;
   ObjectSet ( nm , OBJPROP_TIME3 , t3 ) ;
   ObjectSet ( nm , OBJPROP_PRICE3 , p3 ) ;
}
 
Roger писал(а) >>

이것은 오른쪽에 있는 것 같습니다.

앗...

 
DECIDE >> :

터미널에는 등거리 채널을 설정할 수 있는 기능이 있으므로 추세선을 그리는 대신 설정할 수 있습니다.

여기에 추세선 설정과 유사한 기능이 있습니다.

흥미로운

줄 사이의 간격을 어떻게 설정합니까?

 

거리는 자체적으로 설정되므로 세 점 t1 , p1 , t2 , p2 , t3 , p3만 지정하면 됩니다.

이 기능을 거부했습니다(짧은 선이 하나 있습니다). 추세선 을 그리는 것이 더 쉽고 명확합니다.

 
DECIDE >> :

거리는 자체적으로 설정되므로 세 점 t1 , p1 , t2 , p2 , t3 , p3만 지정하면 됩니다.

이 기능을 거부했습니다(짧은 선이 하나 있습니다). 추세선을 그리는 것이 더 쉽고 명확합니다.

선 사이의 거리 설정

첫 번째(추세선)에 대한 두 번째 선의 변위와 일정한 양의 막대(예: 5개의 막대)만큼 수평으로 평행 한 두 번째 선의 변위를 의미합니다.

이것은 또한 기준선의 설정과 추세의 방향에 따라 이상값을 위아래로 자르는 등거리 채널입니다.

 

함수는 중복 배열에서 0을 제거하고 배열의 최소값 인덱스를 반환합니다.

 int ArrMin ( double & x [ ] ) {
   while ( x [ ArrayMinimum ( x ) ] = = 0 ) {
     for ( int i = ArrayMinimum ( x ) ; i < ArraySize ( x ) - 1 ; i + + ) {
      x [ i ] = x [ i + 1 ] ;
     }
     ArrayResize ( x , ArraySize ( x ) - 1 ) ;
   }
   return ( ArrayMinimum ( x ) ) ;
}
 

모두에게 좋은 하루!

잘은 모르겠지만 이 문제는 이미 논의된 적이 있습니다... 하지만 EA가 고정된 균형으로 작동하는 기능을 만드는 것을 제안하고 싶었습니다.

이것은 Expert Advisors의 최적화에 필요합니다.

우리가 얻는 것: EA를 시작하면 수익이 나기 시작하고 AccountBalance가 증가하기 시작하며 앞으로 EA는 계속 증가하는 잔액을 사용합니다.

예를 들어 잔액과 같은 변수를 입력하고 그 안에 금액을 설정하면 고문이 이 금액에 대해서만 "보고" 구매할 수 있습니다. 이렇게 하면 EA가 작업을 시작할 때마다 잔액만 처리할 수 있다고 생각하게 되며 전체 테스트 기간 동안 다음을 제외하고 어떤 날에 EA를 켜면 EA가 작동할지 믿을 수 있습니다. 실제 균형을 변경하는 요소.

이 변수로 최적화된 Expert Advisor는 앞으로 더욱 정상적으로 작동할 것입니다.

그러한 기능을 코딩하는 것만 남아 있습니다.

내 지식은 이것으로 충분합니다.

외부 이중 잔액 = 10000;

정수() {

//어드바이저의 시작 부분에서 잔액을 수정합니다.

잔액=계정잔액;

리턴(0);

}

정수 시작 {

//-------------------------

???

//-------------------------

}

무엇을 쓸까 ??? 모르겠어요. EA에 주어진 로트의 가능한 개설 주문 수를 계산하는 기능이 있는 경우 AccountBalance를 사용하여 AccountBalance()를 변수로 간단히 대체할 수 있지만 모든 EA가 명시적으로 이 작업을 수행하는 것은 아닙니다.

 

Не знаю, может этот вопрос уже обсуждался... Но я хотел предложить сделать функцию для работы советника с фиксированным балансом.

나는이 문제를 이렇게 풀었다.

저는 다양한 Expert Advisors를 보유하고 있으며 하루에 처음으로 실행하면 계정 잔액이 전역 변수 에 저장되고 이를 기반으로 Expert Advisors가 받은 랏 수와 수입을 계산하여 정보를 보여줍니다. 댓글의 차트에서 (수율: 너무 많은 %)

 
DECIDE писал(а) >>

저에게는 다양한 Expert Advisors가 있으며, 하루에 하나를 시작하면 계정 잔액이 전역 변수에 저장되고 이를 기반으로 Expert Advisors가 받은 랏 수와 수입을 계산합니다. , 차트의 정보를 댓글로 보여줌 (수율: so much %)

이 작업을 수행하는 방법에 대한 세부 정보를 공유할 수 있습니까?

 

нужна мне такая возможность - параллельного горизонтального смещения (копирования, переноса...) трендовой линии на определенное кол-во баров

Geronimo , 개인 또는 ICQ: 9773190에서 알고리즘에 대해 더 자세히 설명하면 주제를 막지 않을 것입니다.

내가 어떻게 도움이 될 수 있습니다

이 작업을 수행하는 방법에 대한 세부 정보를 공유할 수 있습니까?

Nail_Saby, 나는 본질을 설명했지만 다른 방식으로 구현할 수 있습니다. 그것은 당신이 필요로하는 방법과 정확히 무엇에 달려 있습니다