[경고, 주제 닫힘!] 포럼을 어지럽히지 않도록 모든 초보자 질문. 프로, 놓치지 마세요. 당신 없이는 어디에도 없습니다. - 페이지 286 1...279280281282283284285286287288289290291292293...1145 새 코멘트 Monteg 2009.11.06 14:25 #2851 안녕하세요. 전략 테스터 와 같이 차트에 진입점과 퇴장점을 표시하는 고문이 있는지 알려주십시오 ??? Rid 2009.11.06 15:11 #2852 그리고 수동으로 - 당신에게 적합하지 않은 것은 무엇입니까? 거래 내역을 차트로 마우스로 드래그하면 거기에 표시됩니다! 또는 스크립트로 가져오세요 - http://www.kimiv.ru/index.php?option=com_remository&Itemid=13&func=fileinfo&id=32 Дмитрий 2009.11.06 18:03 #2853 TheXpert >> : ShellExecute, "열기" 명령, emnip. 덕분에 [삭제] 2009.11.07 08:41 #2854 rid >> : 외부에 배치해야 합니다. 내부에 없습니다. 기능이지만 별도의 독립 기능입니다. 이와 같이 : 고문이 그런 조건에서 일할지 확신이 서지 않습니다. 왜냐하면 첫 번째 위치는 열 수 없습니다 ... 구매 조건이나 판매 조건에서 isCloseLastPosByTake() 함수를 제거해야 합니다. 그러면 고문이 일할 것입니다. 나는 제거의 권장 사항에 대한 수정과 함께 고문의 코드를 제공합니다. f-i 시작만 //+------------------------------------------------------------------+ //| expert start function | //+------------------------------------------------------------------+ int start ( ) { //---- // Узнаем уровень стопов и спрэд int Spread = MarketInfo ( Symbol ( ) , MODE_SPREAD ) ; int StopLevel = MarketInfo ( Symbol ( ) , MODE_STOPLEVEL ) ; // Рассчитываем значения средних на 0-ом и 1-ом барах double MAF_0 = iMA ( NULL , 0 , MAFP , 0 , 1 , 1 , 0 ) ; double MAF_1 = iMA ( NULL , 0 , MAFP , 0 , 1 , 1 , 1 ) ; double MAS_0 = iMA ( NULL , 0 , MASP , 0 , 1 , 1 , 0 ) ; double MAS_1 = iMA ( NULL , 0 , MASP , 0 , 1 , 1 , 1 ) ; // открытие позиции Buy покупка if ( MAF_1 < MAS_1 & & MAF_0 > MAS_0 ) { if ( isCloseLastPosByTake ( NULL , OP_SELL , MagicNumber ) = = true ) { if ( CheckOrders ( OP_SELL ) ) { if ( StopLoss < = StopLevel + Spread ) double SL = 0 ; else SL = Ask - StopLoss * Point ; if ( TakeProfit < = StopLevel - Spread ) double TP = 0 ; else TP = Ask + TakeProfit * Point ; if ( ! OrderSend ( Symbol ( ) , OP_BUY , Lots , Ask , 5 , SL , TP , NULL , MagicNumber ) ) Print ( "Не открыт ордер Buy. Ошибка №" , GetLastError ( ) ) ; } } } //-------------------Конец покупки ----------------------- // ----- Открытие позиции Sell продажа------------ if ( MAF_1 > MAS_1 & & MAF_0 < MAS_0 ) { if ( CheckOrders ( OP_BUY ) ) { if ( StopLoss < = StopLevel + Spread ) SL = 0 ; else SL = Bid + StopLoss * Point ; if ( TakeProfit < = StopLevel - Spread ) TP = 0 ; else TP = Bid - TakeProfit * Point ; if ( ! OrderSend ( Symbol ( ) , OP_SELL , Lots , Bid , 5 , SL , TP , NULL , MagicNumber ) ) Print ( "Не открыт ордер Sell. Ошибка №" , GetLastError ( ) ) ; } } } //---конец блока продажи ------------------------------ //---- return ( 0 ) ; } //+----------КОНЕЦ ФУНКЦИИ СТАРТ -------------------+ //ЖЖЖЖЖЖЖ Другие вызываемые пользовательские функции ЖЖЖЖЖЖ //+----------------------------------------------------------------------------+ //| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru | //+----------------------------------------------------------------------------+ //| Версия : 19.05.2008 | //| Описание : Возвращает флаг закрытия | //| последней позиции по тейку. | //+----------------------------------------------------------------------------+ //| Параметры: | //| sy - наименование инструмента ("" - любой символ, | //| NULL - текущий символ) | //| op - операция (-1 - любая позиция) | //| mn - MagicNumber (-1 - любой магик) | //+----------------------------------------------------------------------------+ bool isCloseLastPosByTake ( string sy = "" , int op = - 1 , int mn = - 1 ) { datetime t ; double ocp , otp ; int dg , i , j = - 1 , k = OrdersHistoryTotal ( ) ; if ( sy = = "0" ) sy = Symbol ( ) ; for ( i = 0 ; i < k ; i + + ) { if ( OrderSelect ( i , SELECT_BY_POS , MODE_HISTORY ) ) { if ( OrderSymbol ( ) = = sy | | sy = = "" ) { if ( OrderType ( ) = = OP_BUY | | OrderType ( ) = = OP_SELL ) { if ( op < 0 | | OrderType ( ) = = op ) { if ( mn < 0 | | OrderMagicNumber ( ) = = mn ) { if ( t < OrderCloseTime ( ) ) { t = OrderCloseTime ( ) ; j = i ; } } } } } } } if ( OrderSelect ( j , SELECT_BY_POS , MODE_HISTORY ) ) { dg = MarketInfo ( sy , MODE_DIGITS ) ; if ( dg = = 0 ) if ( StringFind ( OrderSymbol ( ) , "JPY" ) < 0 ) dg = 4 ; else dg = 2 ; ocp = NormalizeDouble ( OrderClosePrice ( ) , dg ) ; otp = NormalizeDouble ( OrderTakeProfit ( ) , dg ) ; if ( ocp = = otp ) return ( True ) ; } return ( False ) ; } [삭제] 2009.11.07 08:43 #2855 컴파일하는 동안 오류가 발생했습니다 2;73;C:\Program Files\MetaTrader - Alpari\experts\SimpleMA22333.mq4;103:3;'}' - unbalanced parentheses 이 장소는 태그되었습니다 * 친절한 사람들을 도와주세요 ..... return(0); * }//+----------КОНЕЦ ФУНКЦИИ СТАРТ -------------------+ Victor Nikolaev 2009.11.07 08:59 #2856 igrok2008 писал(а) >> 컴파일하는 동안 오류가 발생했습니다 이 장소에 태그를 추가했습니다 * 친절한 사람들을 도와주세요 ..... 시작 함수에서 중괄호의 수가 다릅니다. //+------------------------------------------------------------------+ //| expert start function | //+------------------------------------------------------------------+ int start ( ) { // Узнаем уровень стопов и спрэд int Spread = MarketInfo ( Symbol ( ) , MODE_SPREAD ) ; int StopLevel = MarketInfo ( Symbol ( ) , MODE_STOPLEVEL ) ; // Рассчитываем значения средних на 0-ом и 1-ом барах double MAF_0 = iMA ( NULL , 0 , MAFP , 0 , 1 , 1 , 0 ) ; double MAF_1 = iMA ( NULL , 0 , MAFP , 0 , 1 , 1 , 1 ) ; double MAS_0 = iMA ( NULL , 0 , MASP , 0 , 1 , 1 , 0 ) ; double MAS_1 = iMA ( NULL , 0 , MASP , 0 , 1 , 1 , 1 ) ; // открытие позиции Buy покупка if ( MAF_1 < MAS_1 & & MAF_0 > MAS_0 ) { if ( isCloseLastPosByTake ( NULL , OP_SELL , MagicNumber ) = = true ) { if ( CheckOrders ( OP_SELL ) ) { if ( StopLoss < = StopLevel + Spread ) double SL = 0 ; else SL = Ask - StopLoss * Point ; if ( TakeProfit < = StopLevel - Spread ) double TP = 0 ; else TP = Ask + TakeProfit * Point ; if ( ! OrderSend ( Symbol ( ) , OP_BUY , Lots , Ask , 5 , SL , TP , NULL , MagicNumber ) ) Print ( "Не открыт ордер Buy. Ошибка №" , GetLastError ( ) ) ; } } } //-------------------Конец покупки ----------------------- // ----- Открытие позиции Sell продажа------------ if ( MAF_1 > MAS_1 & & MAF_0 < MAS_0 ) { if ( isCloseLastPosByTake ( NULL , OP_BUY , MagicNumber ) = = true ) { if ( CheckOrders ( OP_BUY ) ) { if ( StopLoss < = StopLevel + Spread ) SL = 0 ; else SL = Bid + StopLoss * Point ; if ( TakeProfit < = StopLevel - Spread ) TP = 0 ; else TP = Bid - TakeProfit * Point ; if ( ! OrderSend ( Symbol ( ) , OP_SELL , Lots , Bid , 5 , SL , TP , NULL , MagicNumber ) ) Print ( "Не открыт ордер Sell. Ошибка №" , GetLastError ( ) ) ; } } } //---конец блока продажи ------------------------------ return ( 0 ) ; } //+----------КОНЕЦ ФУНКЦИИ СТАРТ -------------------+ 이런 일이 있었어야 했습니다. 논리를 이해하지 못했다 Rid 2009.11.07 09:17 #2857 igrok2008 >> : 나는 제거의 권장 사항에 대한 수정과 함께 고문의 코드를 제공합니다. f-i 시작만 Sales 블록에서 여분의 중괄호를 제거하십시오. 여는 괄호의 개수는 닫는 괄호의 개수와 같아야 한다고 썼습니다. 그리고 거기에 2개의 브래킷이 열리고 닫힙니다. 3개! 물론 컴파일 오류가 발생합니다. [삭제] 2009.11.07 17:04 #2858 rid >> : Sales 블록에서 여분의 중괄호를 제거합니다. 여는 괄호의 개수는 닫는 괄호의 개수와 같아야 한다고 썼습니다. 그리고 거기에 2개의 브래킷이 열리고 닫힙니다. 3개! 물론 컴파일 오류가 발생합니다. 여는 괄호는 어떻습니까? aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa킹a곽을 알았다. :-)))))))) 내가 테스트 할거야 ........ cho, 나를 비난하지 마십시오. 질문으로 시도 할 것입니다. Victor Nikolaev 2009.11.07 17:06 #2859 igrok2008 писал(а) >> 여는 괄호는 어떻습니까? aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa킹a곽을 알았다. :-)))))))) 내가 테스트 할거야 ........ cho, 나를 비난하지 마십시오. 질문으로 시도 할 것입니다. 수정본을 만들었습니다. Rid 2009.11.07 17:18 #2860 이 수정된 버전은 작동하지 않습니다. 그는 첫 번째 거래를 열 수 없습니다. 왜냐하면 yavl 버전에서 첫 번째 트랜잭션을 여는 조건입니다. 테이크 또는 스톱으로 이전 항목을 닫습니다! 저것들. - 악순환. 1...279280281282283284285286287288289290291292293...1145 새 코멘트 트레이딩 기회를 놓치고 있어요: 무료 트레이딩 앱 복사용 8,000 이상의 시그널 금융 시장 개척을 위한 경제 뉴스 등록 로그인 공백없는 라틴 문자 비밀번호가 이 이메일로 전송될 것입니다 오류 발생됨 Google으로 로그인 웹사이트 정책 및 이용약관에 동의합니다. 계정이 없으시면, 가입하십시오 MQL5.com 웹사이트에 로그인을 하기 위해 쿠키를 허용하십시오. 브라우저에서 필요한 설정을 활성화하시지 않으면, 로그인할 수 없습니다. 사용자명/비밀번호를 잊으셨습니까? Google으로 로그인
안녕하세요. 전략 테스터 와 같이 차트에 진입점과 퇴장점을 표시하는 고문이 있는지 알려주십시오 ???
그리고 수동으로 - 당신에게 적합하지 않은 것은 무엇입니까? 거래 내역을 차트로 마우스로 드래그하면 거기에 표시됩니다!
또는 스크립트로 가져오세요 - http://www.kimiv.ru/index.php?option=com_remository&Itemid=13&func=fileinfo&id=32
ShellExecute, "열기" 명령, emnip.
덕분에외부에 배치해야 합니다. 내부에 없습니다. 기능이지만 별도의 독립 기능입니다.
이와 같이 :
고문이 그런 조건에서 일할지 확신이 서지 않습니다. 왜냐하면 첫 번째 위치는 열 수 없습니다 ...
구매 조건이나 판매 조건에서 isCloseLastPosByTake() 함수를 제거해야 합니다.
그러면 고문이 일할 것입니다.
나는 제거의 권장 사항에 대한 수정과 함께 고문의 코드를 제공합니다. f-i 시작만
컴파일하는 동안 오류가 발생했습니다
이 장소는 태그되었습니다 * 친절한 사람들을 도와주세요 .....
컴파일하는 동안 오류가 발생했습니다
이 장소에 태그를 추가했습니다 * 친절한 사람들을 도와주세요 .....
시작 함수에서 중괄호의 수가 다릅니다.
이런 일이 있었어야 했습니다. 논리를 이해하지 못했다나는 제거의 권장 사항에 대한 수정과 함께 고문의 코드를 제공합니다. f-i 시작만
Sales 블록에서 여분의 중괄호를 제거하십시오. 여는 괄호의 개수는 닫는 괄호의 개수와 같아야 한다고 썼습니다. 그리고 거기에 2개의 브래킷이 열리고 닫힙니다. 3개!
물론 컴파일 오류가 발생합니다.
Sales 블록에서 여분의 중괄호를 제거합니다. 여는 괄호의 개수는 닫는 괄호의 개수와 같아야 한다고 썼습니다. 그리고 거기에 2개의 브래킷이 열리고 닫힙니다. 3개!
물론 컴파일 오류가 발생합니다.
여는 괄호는 어떻습니까?
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa킹a곽을 알았다. :-))))))))
내가 테스트 할거야 ........ cho, 나를 비난하지 마십시오. 질문으로 시도 할 것입니다.
여는 괄호는 어떻습니까?
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa킹a곽을 알았다. :-))))))))
내가 테스트 할거야 ........ cho, 나를 비난하지 마십시오. 질문으로 시도 할 것입니다.
수정본을 만들었습니다.
이 수정된 버전은 작동하지 않습니다. 그는 첫 번째 거래를 열 수 없습니다. 왜냐하면 yavl 버전에서 첫 번째 트랜잭션을 여는 조건입니다. 테이크 또는 스톱으로 이전 항목을 닫습니다!
저것들. - 악순환.