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

 
sasha1995 :
이중 최대값=높음[iHighest(NULL,PERIOD_M15,MODE_HIGH,32,0)]; // 다음 32개 막대의 최대값을 찾습니다.
이중 최소 = 낮음[iLowest(NULL,PERIOD_M15,MODE_LOW,32,0)]; // 다음 32개 막대의 최저점을 찾습니다.
이중 최소=NormalizeDouble(최소, 자릿수); // T/P로 변환

이중 최대 = NormalizeDouble(최대, 자릿수); // T/P로 변환

티켓=OrderSend (Symbol(), OP_BUY, lot, Ask, 3.0, 최대, "구매");

무엇이 잘못되었는지 알려주세요. 이익 창출을 원하지 않습니다.

ihighest는 인덱스만 제공한다는 것을 이해하는 것 같습니다. 하지만 가장 높은 가격을 어떻게 찾을 수 있습니까?

이것은 완전한 혼란입니다. 그래서:

 double max= NormalizeDouble (High[iHighest( NULL , PERIOD_M15 ,MODE_HIGH, 32 , 0 )], Digits ); // найти максимум последующих 32 баров
 double min= NormalizeDouble (Low[iLowest( NULL , PERIOD_M15 ,MODE_LOW, 32 , 0 )], Digits ); // найти минимум последующих 32 баров
 
sasha1995 :

이해가 안되네요 설명 부탁드립니다

현재 차트의 고가는 배열에 저장됩니다. -- High[] 시계열
 
TarasBY :

이것은 완전한 혼란입니다. 그래서:


작동하지 않습니다(여전히 T/P가 출력되지 않음

if(TimeToStr(TimeCurrent(),TIME_SECONDS) == "00:00:00"){ // если время сервера 00:00:00, тогда

 double max= NormalizeDouble (High[iHighest(NULL,PERIOD_M15,MODE_HIGH,32,0)], Digits);

double min= NormalizeDouble (Low[iLowest(NULL,PERIOD_M15,MODE_LOW,32,0)], Digits); // ????? ??????? ??????????? 32 ?????

 }

 int Ticket;

if (TimeToStr(TimeCurrent(),TIME_SECONDS)== "09:00:00"){ // если время сервера 09:00:00, тогда

   if (napravl > 0){ // если направление больше 0, то

      Ticket=OrderSend (Symbol(), OP_BUY, lot, Ask, 3,0,max, "Покупаю"); // купить и поставить Take profit через 35 пунктов Bid + 385 * Point

      Alert (GetLastError());

   }

   else {

      if (napravl < 0) { // иначе, если направление меньше 0, то

        Ticket=OrderSend (Symbol(), OP_SELL, lot, Bid, 3,0,min, "Продаю"); // продать и поставить Take profit через 35 пунктов Ask - 385 * Point

         Alert (GetLastError());

      }

   }

//----

   return(0);

  } 

 

모두에게 좋은 하루입니다. 나는 그러한 질문에 관심이 있습니다. 예를 들어 어떤 이벤트에서 시작 하여 틱으로 작업 할 수 있습니까? 시작 함수 가격, 예를 들어 Bid는 항상 덮어쓰여지고 이전 값에 대해 작업할 수 있지만 이전 값에 대해 작업하는 방법 등, 모두 기록하는 위치 및 방법은 무엇입니까? 많은 관심 부탁드립니다)

 
sasha1995 :

작동하지 않음(여전히 T/P가 출력되지 않음

모두 동의하셨나요? "여전히 T/P를 출력하지 않습니다" - 해독하는 데 어려움을 겪으십시오! 하다:

 Print ( "max = " , max, " | min = " , min);

그리고 로그에 무엇이 있는지 보여주세요.

그리고 DC가 현재 가격 에서 TP와 SL의 거리에 따라 결정하는 규칙이 있음을 잊지 마십시오. 이 규칙을 따라야 합니다!!!

 
sasha1995 :

작동하지 않음(여전히 T/P가 출력되지 않음

그리고 napravl < 0은 "정남향"입니까?
 
TarasBY :

모두 동의하셨나요? "여전히 T/P를 출력하지 않습니다" - 해독하는 데 어려움을 겪으십시오! 하다:

그리고 로그에 무엇이 있는지 보여주세요.

그리고 DC가 현재 가격에서 TP와 SL의 거리에 따라 결정하는 규칙이 있음을 잊지 마십시오. 이 규칙을 따라야 합니다!!!



2012.12.08 20:23:18 2012.12.07 00:00 사샤 EURUSD.m,M15: 최대 = 1.3079 | 분 = 1.295

 
dbs039 :

모두에게 좋은 하루입니다. 저는 그런 질문에 관심이 있습니다. 예를 들어 어떤 이벤트 이후의 첫 번째 틱 값과 n번째 틱 값을 비교하는 것과 같이 어떤 이벤트에서 시작하여 틱으로 작업할 수 있습니까? 시작 함수 가격, 예를 들어 Bid는 항상 덮어쓰여지고 이전 값에 대해 작업할 수 있지만 이전 값에 대해 작업하는 방법 등, 모두 기록하는 위치 및 방법은 무엇입니까? 많은 관심 부탁드립니다)

배열로:

 double gda_Array[ 1000000 ][ 3 ];
int     gi_cnt = 0 ;
void start()
{
    gda_Array[gi_cnt][ 0 ] = GetTickCount ();
    gda_Array[gi_cnt][ 1 ] = TimeCurrent ();
    gda_Array[gi_cnt][ 2 ] = Bid;
    gi_cnt++;
     if (gi_cnt > ArrayRange (gda_Array, 0 )) ArrayResize (gda_Array, gi_cnt);
}

그리고 틱을 가지고 놀아라. 파일에 쓸 수 있습니다.

 
sasha1995 :

2012.12.08 20:23:18 2012.12.07 00:00 사샤 EURUSD.m,M15: 최대 = 1.3079 | 분 = 1.295

이것은 최대값과 최소값이 계산되었음을 나타냅니다.
 
dbs039 :

모두에게 좋은 하루입니다. 저는 그런 질문에 관심이 있습니다. 예를 들어 어떤 이벤트 이후의 첫 번째 틱 값과 n번째 틱 값을 비교하는 것과 같이 어떤 이벤트에서 시작하여 틱으로 작업할 수 있습니까? 시작 함수 가격, 예를 들어 Bid는 항상 덮어쓰여지고 이전 값에 대해 작업할 수 있지만 이전 값에 대해 작업하는 방법 등, 모두 기록하는 위치 및 방법은 무엇입니까? 많은 관심 부탁드립니다)


MT4의 표준 제공에서는 틱 기록으로 작업할 가능성이 없습니다. 그래도 원한다면 http://www.opentraders.ru/downloads/17/ http://avtoforex.ru/testirovanie/5-kachestvo-modelirovanija-99-procentov-v-testere-strategij.html 을 읽어보십시오.