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

 
dyxaa :

글쎄, 정확히. 독창적으로 간단합니다)))

도와주세요) 보류 중인 주문을 하겠습니다. 예를 들어 구매를 중지하겠습니다. 예를 들어 가격이 100포인트 내려가면 제거되도록 해야 합니다. 이 작업을 수행할 수 있습니까?

프로그래밍 방식으로 설정하고 있습니까 아니면 수동으로 설정합니까?

손으로 손으로 닫으면 (더 잘) 걱정하지 마십시오.

프로그래밍 방식으로(어드바이저를 통해) 주문을 정렬하고 필요한 것을 찾습니다. 그 다음에:

 if (Bid < OrderOpenPrice()- 100 * Point ) OrderDelete(OrderTicket());   // Это для Вашего типа ордера - Бай-Стоп

검색 및 기타 간단한 작업을 수행하는 방법을 모르는 경우 MCL에 대한 교과서를 읽는 것으로 시작하십시오. 이 경우 코드에 대처할 가능성이 낮기 때문입니다.

 
hoz :

아이디어는 있었지만 실생활에서 어떻게 하고 실생활에서 어떻게 안정적으로 작동할 것인지는 잘 모르겠습니다.

요점은 이것입니다. 바가 닫힌 직후, 즉, 차트에 올빼미를 넣은 후 시장에 진입해야 합니다. 새로운 오프닝에서. 첫 주문용입니다. 또한 주문이 TP 또는 Stop으로 마감되면 새로운 바가 열리면 즉시 주문도 열립니다. 이 작업을 수행하는 가장 현명한 방법은 무엇입니까?

내가 알기로는 변수를 만들어야 합니다. 현재 막대의 시가를 그 안에 넣으십시오. 그리고 이 값을 현재 막대의 시작 가격과 비교합니다. 변수 값이 인덱스가 0인 현재 막대의 시가 값과 같지 않으면 주문을 엽니다.

이것이 최선의 선택입니까?

여기에서 내 경우를 해결하는 과정에서 New Bar를 결정하는 함수를 만났습니다.

 //+------------------------------------------------------------------+
//|  Проверка на появление нового бара                               |
//+------------------------------------------------------------------+
bool isNewBar()
   {   static datetime TimeBar= 0 ;
       bool flag= false ;
       if (TimeBar!=Time[ 0 ])
         {
          TimeBar=Time[ 0 ];
          flag= true ;
         } 
       return (flag);
   }
//+------------------------------------------------------------------+
이제 주문을 여는 일만 남았습니다... :)))
 
dyxaa :

글쎄, 정확히. 독창적으로 간단합니다)))

도와주세요) 보류 중인 주문을 하겠습니다. 예를 들어 구매를 중지하겠습니다. 예를 들어 가격이 100포인트 내려가면 제거되도록 해야 합니다. 이 작업을 수행할 수 있습니까?

그리고 여기에 십자가가 있고, 지연을 설정한 가격과 가격의 차이로 100포인트를 센다!
 

오류가 무엇인지 전혀 모릅니다. 알아낼 수 있도록 도와주세요. '시작' 오류가 발생합니다. 변수가 정의되지 않았습니다. 특정 기간 동안 RSI 값에서 최대값을 찾아야 합니다.

(RSIBuffer3[i]) // RSI 값이 있는 배열

// 배열의 크기를 결정

정수 개수=ArraySize(RSIBuffer3[i]);

// 배열의 최대값 찾기

int RSI_max=ArrayMiximum(RSIBuffer3[i], count-1, int start=0);

 
Chiripaha :

구현하면 실생활에서 데모처럼 안정적으로 작동합니다. 그러나 그것이 수익성이 있다는 사실은 아닙니다.

새로운 막대 모양을 통해 구현합니다. 그러나 어떤 방향으로 열려 있고 어떤 조건에서 이 면이 결정되는지 공식화하지 않았습니다.

아무것도 비교할 필요가 없습니다. 새 막대가 나타날 때(입력한 내용을 기반으로 함) 주문을 시작해야 하고 그게 전부입니다.

상상할 수 없는 경우:

"그리고 경험은 어려운 실수의 아들이다.
그리고 천재는 역설의 친구입니다 "(Alexander Sergeevich가 당신을 도와줍니다)

부엉이를 만들어(쓰기) 실험적으로 확인해야 합니다. -누군가 당신을 위해 올빼미를 쓸 것 같지 않습니다 (무료). 제안하는 것은 한 가지입니다. 그러나 실천할 아이디어(생각)는 더 이상 도움이 아니라 작동합니다.


나는 모든 것을 대표합니다. 결론은 새 막대를 결정하기 위해 하나 또는 다른 기능을 사용하는 경우 첫 번째 주문은 EA가 차트에 첨부될 때 자발적으로 열립니다. Expert Advisor가 차트에 배치되는 순간, 막대 열림 시간을 저장하는 변수는 현재 막대 열림 시간과 확실히 같지 않습니다 . 그래서 인터넷의 변수에 현재 바의 여는 시간을 바로 할당하고, 이 변수가 현재 바의 여는 시간과 같으면 아무 것도 하지 않고 , 같지 않으면 실행해야 한다고 생각했다. 오프닝 기능. 이것이 가장 적절한 옵션이거나 init 없이도 할 수 있다고 생각했습니다.

 
Merincool :

오류가 무엇인지 전혀 모릅니다. 알아낼 수 있도록 도와주세요. '시작' 오류가 발생합니다. 변수가 정의되지 않았습니다. 특정 기간 동안 RSI 값에서 최대값을 찾아야 합니다.

(RSIBuffer3[i]) // RSI 값이 있는 배열

// 배열의 크기를 결정

정수 개수=ArraySize(RSIBuffer3[i]);

// 배열의 최대값 찾기

int RSI_max=ArrayMiximum(RSIBuffer3[i], count-1, int start=0);

// 배열의 크기를 결정

정수 개수=배열 크기( RSIBuffer3 );

// 배열의 최대값 찾기

int RSI_max=ArrayMiximum( RSIBuffer3 , count-1, int 시작=0);

 

터미널이 특정 계정으로 시작하려면 프로그램 바로 가기에 무엇을 작성해야합니까?

 
좋은 하루입니다. 4개의 커스텀 인디케이터가 있고 그것에 어드바이저를 쓰려고 합니다. 문제는 0이 아니라 여전히 숫자로 표시되도록 각 특정 인디케이터에 대한 가격 값을 얻기 위해 무엇을 작성해야 하는지입니다. 작동하지 않습니다. 여기에 "키트" 자체가 있습니다.
파일:
 
Elektronik, 그래서 그들이 마지막으로 작업한 것과 함께 열립니다.어쨌든 나는 그것을 다르게 보지 않았습니다.
 
palomnik :
Elektronik, 그래서 그들이 마지막으로 작업한 것과 함께 열립니다.어쨌든 나는 그것을 다르게 보지 않았습니다.

마지막이 아니라 확실합니다!!! 테스터에서 끝내고 실제에서 시작합니다.

사유: