[ARCHIVE] 포럼을 어지럽히 지 않도록 초보자 질문. 프로, 놓치지 마세요. 너 없이는 아무데도 - 3. - 페이지 201 1...194195196197198199200201202203204205206207208...652 새 코멘트 --- 2011.09.21 21:06 #2001 isaev-av : 고맙습니다. 그리고 Digits는 DC에 따라 4 또는 5로 변경되어야 합니까? 변경해서는 안되며 통화에 따라 취합니다. 시장 정보 [삭제] 2011.09.21 21:09 #2002 isaev-av : 고맙습니다. 그리고 Digits는 DC에 따라 4 또는 5로 변경되어야 합니까? Digits 만 남겨두면 모든 것이 스스로 대체됩니다. [Deleted] 2011.09.22 10:53 #2003 동지 여러분, 저는 아주 간단한 시스템을 고려하고 있습니다... MACD가 5분 이상 그 영역에 있지 않으면 엽니다. 어떤 이유로 거래가 열리지 않습니다 .... 말해주세요 plz ... //+------------------------------------------------------------------+ //| MACD ^^^.mq4 | //| Copyright © 2011, MetaQuotes Software Corp. | //| http://www.metaquotes.net | //+------------------------------------------------------------------+ #property copyright "Copyright © 2011, MetaQuotes Software Corp." #property link "http://www.metaquotes.net" extern int TP = 100 ; extern int TS = 100 ; extern int TF = 1 ; extern double lots = 0.1 ; int fast_ema = 5 ; int slow_ema = 34 ; int signal_period = 5 ; int slip = 3 ; int Magic = 1 ; int total; int ticket; //объявил тотал и тикет //+------------------------------------------------------------------+ //| expert initialization function | //+------------------------------------------------------------------+ int init() { //---- //---- return ( 0 ); } //+------------------------------------------------------------------+ //| expert deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- //---- return ( 0 ); } //+------------------------------------------------------------------+ //| expert start function | //+------------------------------------------------------------------+ int start() { //---- bool signal = signal_MACD(); AnalyzeSignal(signal); //---- return ( 0 ); } //+------------------------------------------------------------------+ bool signal_MACD() { bool signal_MACD = false; double tmp = iMACD ( Symbol (),TF,fast_ema,slow_ema,signal_period, PRICE_CLOSE ,MODE_MAIN, 0 ); for ( int i= 1 ;i<= 5 ;i++) { if ( NormalizeDouble ( iMACD ( Symbol (),TF,fast_ema,slow_ema,signal_period, PRICE_CLOSE ,MODE_MAIN,i)*tmp, 4 )< 0.0 ) { signal_MACD = true; break ; } } } void AnalyzeSignal( bool signal) { total = OrdersTotal (); double MACD = iMACD ( Symbol (),TF,fast_ema,slow_ema,signal_period, PRICE_CLOSE ,MODE_MAIN, 0 ); if (total < 1 ) { if (signal == true) { if (MACD > 0 ) { ticket = OrderSend ( Symbol (),OP_BUY,lots,Ask,slip,Bid-TS* Point ,Bid+TP* Point , "Покупаем" ,Magic, 0 , Green ); if (ticket> 0 ) { OrderSelect (ticket,SELECT_BY_TICKET); Print ( "открылись на покупку по цене:" , OrderOpenPrice ()); } else { Print ( "открыться не удалось по причине:" , GetLastError ()); return ( 0 ); } } if (MACD < 0 ) { ticket = OrderSend ( Symbol (),OP_SELL,lots,Bid,slip,Ask+TS* Point ,Ask-TP* Point , "Продаем" ,Magic, 0 , Red ); if (ticket> 0 ) { OrderSelect (ticket,SELECT_BY_TICKET); Print ( "открылись на продажу по цене:" , OrderOpenPrice ()); } else { Print ( "открыться не удалось по причине:" , GetLastError ()); return ( 0 ); } } else return ( 0 ); } } } noobys 2011.09.22 10:55 #2004 돕다! 모든 사람은 MACD 샘플을 가지고 있으며 여기에 많은 계산을 추가하려고 합니다. 내 변경 후 컴파일되지 않습니다 :( 도움말! double Lots() { double Lots; Lots= AccountFreeMargin ()/ 10000 * 5 ; Lots= MathMin ( 15 , MathMax ( 0.1 ,Lots)); if (Lots< 0.1 ) Lots= NormalizeDouble (Lots, 2 ); else { if (Lots< 1 ) Lots= NormalizeDouble (Lots, 1 ); else Lots= NormalizeDouble (Lots, 0 ); } return (Lots); } Artem Gulturyan 2011.09.22 11:15 #2005 여기요 ((Bid-OrderOpenPrice(),Digits) >= -60) 코드 130이 각각의 새로운 틱을 제공하고 서버를 매우 많이 로드하는 경우 어드바이저는 오류를 제공합니다. if ((pBid- NormalizeDouble (OrderOpenPrice(),Digits)) == -60)로 변경하면 표시되지 않습니다. 나는 정확히 >=가 필요하며 어떻게 해야 합니까? 내가 그것을 알아낼 수 있도록 도와주세요 미리 감사합니다!! Vitaliy Andreischev 2011.09.22 11:15 #2006 거래에 포함된 통화 쌍의 수를 프로그래밍 방식으로 계산하는 방법은 무엇입니까? 열린 주문의 열거를 통해 시도했습니다. 3개의 통화 쌍에 대한 어드바이저를 출시했습니다. 각각 다른 결과가 있습니다. 하나 - 3 (정확), 두 번째 - 2, 세 번째 - 1. 2개의 통화 쌍에서 시도: 1번 - 2번(맞음), 2번 - 1번. 감소 패턴이 아니었다면 실수했다고 생각했을 것입니다. int val() { int kp= 1 ; string x1= "0" ,x2= "0" , x3= "0" , x4= "0" , x5= "0" , x6= "0" , x7= "0" , x8= "0" , x9= "0" , x10= "0" , x11= "0" , x12= "0" , x13= "0" , x14= "0" , x15= "0" , x16= "0" , x17= "0" , x18= "0" , x19= "0" , x20= "0" , x21= "0" , x22= "0" , x23= "0" , x24= "0" ; for ( int i= OrdersTotal ()- 1 ; i>= 0 ; i--) { if (! OrderSelect (i,SELECT_BY_POS,MODE_TRADES)) break ; if ( OrderSymbol ()== Symbol ()) break ; if (x9!= "0" && x1!= OrderSymbol () && x2!= OrderSymbol () && x3!= OrderSymbol () && x4!= OrderSymbol () && x5!= OrderSymbol () && x6!= OrderSymbol () && x7!= OrderSymbol () && x8!= OrderSymbol () && x9!= OrderSymbol () && x10== "0" ) {x10= OrderSymbol (); kp= 11 ;} if (x8!= "0" && x1!= OrderSymbol () && x2!= OrderSymbol () && x3!= OrderSymbol () && x4!= OrderSymbol () && x5!= OrderSymbol () && x6!= OrderSymbol () && x7!= OrderSymbol () && x8!= OrderSymbol () && x9== "0" ) {x9= OrderSymbol (); kp= 10 ;} if (x7!= "0" && x1!= OrderSymbol () && x2!= OrderSymbol () && x3!= OrderSymbol () && x4!= OrderSymbol () && x5!= OrderSymbol () && x6!= OrderSymbol () && x7!= OrderSymbol () && x8== "0" ) {x8= OrderSymbol (); kp= 9 ;} if (x6!= "0" && x1!= OrderSymbol () && x2!= OrderSymbol () && x3!= OrderSymbol () && x4!= OrderSymbol () && x5!= OrderSymbol () && x6!= OrderSymbol () && x7== "0" ) {x7= OrderSymbol (); kp= 8 ;} if (x5!= "0" && x1!= OrderSymbol () && x2!= OrderSymbol () && x3!= OrderSymbol () && x4!= OrderSymbol () && x5!= OrderSymbol () && x6== "0" ) {x6= OrderSymbol (); kp= 7 ;} if (x4!= "0" && x1!= OrderSymbol () && x2!= OrderSymbol () && x3!= OrderSymbol () && x4!= OrderSymbol () && x5== "0" ) {x5= OrderSymbol (); kp= 6 ;} if (x3!= "0" && x1!= OrderSymbol () && x2!= OrderSymbol () && x3!= OrderSymbol () && x4== "0" ) {x4= OrderSymbol (); kp= 5 ;} if (x2!= "0" && x1!= OrderSymbol () && x2!= OrderSymbol () && x3== "0" ) {x3= OrderSymbol (); kp= 4 ;} if (x1!= "0" && x1!= OrderSymbol () && x2== "0" ) {x2= OrderSymbol (); kp= 3 ;} if (x1== "0" ) {x1= OrderSymbol (); kp= 2 ;} } return (kp); } [삭제] 2011.09.22 11:16 #2007 skyjet : 내 변경 후 컴파일되지 않습니다 :( 글쎄, 그는 무엇을 쓰는가? noobys 2011.09.22 11:25 #2008 Figar0 : 글쎄, 그는 무엇을 쓰는가? 12개의 오류, 12개의 경고. 로트 계산을 잘못 입력하고 있습니까? Victor Nikolaev 2011.09.22 11:29 #2009 forexnew : 거래에 포함된 통화 쌍의 수를 프로그래밍 방식으로 계산하는 방법은 무엇입니까? 열린 주문의 열거를 통해 시도했습니다. 3개의 통화 쌍에 대한 어드바이저를 출시했습니다. 각각 다른 결과가 있습니다. 하나 - 3 (정확), 두 번째 - 2, 세 번째 - 1. 2개의 통화 쌍에서 시도: 1번 - 2번(맞음), 2번 - 1번. 감소 패턴이 아니었다면 실수했다고 생각했을 것입니다. 또는 고문의 도움을 받아 활성 도구 목록을 만들 수도 있습니다. 접근 방식이 다소 복잡합니다. 해결이 더 쉬울까요 [삭제] 2011.09.22 11:37 #2010 skyjet : 12개의 오류, 12개의 경고. 로트 계산을 잘못 입력하고 있습니까? 함수 자체에는 오류가 없으며 사용하려고 하면 오류가 발생할 수 있지만 이를 표시하지 않습니다. 파일로 직접 컴파일되지 않은 것을 퍼뜨리면 추측할 필요가 없습니다. 1...194195196197198199200201202203204205206207208...652 새 코멘트 트레이딩 기회를 놓치고 있어요: 무료 트레이딩 앱 복사용 8,000 이상의 시그널 금융 시장 개척을 위한 경제 뉴스 등록 로그인 공백없는 라틴 문자 비밀번호가 이 이메일로 전송될 것입니다 오류 발생됨 Google으로 로그인 웹사이트 정책 및 이용약관에 동의합니다. 계정이 없으시면, 가입하십시오 MQL5.com 웹사이트에 로그인을 하기 위해 쿠키를 허용하십시오. 브라우저에서 필요한 설정을 활성화하시지 않으면, 로그인할 수 없습니다. 사용자명/비밀번호를 잊으셨습니까? Google으로 로그인
고맙습니다. 그리고 Digits는 DC에 따라 4 또는 5로 변경되어야 합니까?
변경해서는 안되며 통화에 따라 취합니다. 시장 정보
고맙습니다. 그리고 Digits는 DC에 따라 4 또는 5로 변경되어야 합니까?
Digits 만 남겨두면 모든 것이 스스로 대체됩니다.
여기요
((Bid-OrderOpenPrice(),Digits) >= -60) 코드 130이 각각의 새로운 틱을 제공하고 서버를 매우 많이 로드하는 경우 어드바이저는 오류를 제공합니다.
if ((pBid- NormalizeDouble (OrderOpenPrice(),Digits)) == -60)로 변경하면 표시되지 않습니다.
나는 정확히 >=가 필요하며 어떻게 해야 합니까?
내가 그것을 알아낼 수 있도록 도와주세요
미리 감사합니다!!
거래에 포함된 통화 쌍의 수를 프로그래밍 방식으로 계산하는 방법은 무엇입니까?
열린 주문의 열거를 통해 시도했습니다. 3개의 통화 쌍에 대한 어드바이저를 출시했습니다. 각각 다른 결과가 있습니다.
하나 - 3 (정확), 두 번째 - 2, 세 번째 - 1.
2개의 통화 쌍에서 시도:
1번 - 2번(맞음), 2번 - 1번. 감소 패턴이 아니었다면 실수했다고 생각했을 것입니다.
내 변경 후 컴파일되지 않습니다 :(
글쎄, 그는 무엇을 쓰는가?
글쎄, 그는 무엇을 쓰는가?
거래에 포함된 통화 쌍의 수를 프로그래밍 방식으로 계산하는 방법은 무엇입니까?
열린 주문의 열거를 통해 시도했습니다. 3개의 통화 쌍에 대한 어드바이저를 출시했습니다. 각각 다른 결과가 있습니다.
하나 - 3 (정확), 두 번째 - 2, 세 번째 - 1.
2개의 통화 쌍에서 시도:
1번 - 2번(맞음), 2번 - 1번. 감소 패턴이 아니었다면 실수했다고 생각했을 것입니다.
또는 고문의 도움을 받아 활성 도구 목록을 만들 수도 있습니다. 접근 방식이 다소 복잡합니다. 해결이 더 쉬울까요
12개의 오류, 12개의 경고. 로트 계산을 잘못 입력하고 있습니까?
함수 자체에는 오류가 없으며 사용하려고 하면 오류가 발생할 수 있지만 이를 표시하지 않습니다. 파일로 직접 컴파일되지 않은 것을 퍼뜨리면 추측할 필요가 없습니다.