포럼을 어지럽히 지 않도록 모든 초보자 질문. 프로, 놓치지 마세요. 너 없이는 아무데도 - 6. - 페이지 71

 

지표가 일간 차트에 화살표를 그릴 필요가 있습니다. 나는 문제가 15분 EMA 값을 사용하고 있다고 가정하고 모든 것이 15분 EMA에서 작동합니다. 지표를 15분 단위로 계산하고 일간 차트에도 화살표를 그릴 수 있습니까?

아래는 코드 자체입니다.

 #property copyright ""
#property link       ""

#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 Magenta
#property indicator_color2 Red

//--- input parameters

//--- buffers
double ExtMapBuffer1[];
double ExtMapBuffer2[];

//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//---- indicators
   SetIndexStyle( 0 , DRAW_ARROW );
   SetIndexArrow( 0 , 217 );
   SetIndexBuffer ( 0 ,ExtMapBuffer1);
   SetIndexEmptyValue( 0 , 0.0 );
   SetIndexStyle( 1 , DRAW_ARROW );
   SetIndexArrow( 1 , 217 );
   SetIndexBuffer ( 1 ,ExtMapBuffer2);
   SetIndexEmptyValue( 1 , 0.0 );
   IndicatorDigits( Digits + 1 );
//----
   return ( 0 );
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return ( 0 );
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
  {
     int counted_bars=IndicatorCounted(),                      
    limit;
     double
    signal_1,
    signal_2,
    MA_1_t,                                                 
    MA_2_t;
 
   if (counted_bars> 0 )
      counted_bars--;
   
   limit= Bars -counted_bars;
   
   
   for ( int i= 0 ;i<limit;i++)
   {
      MA_1_t= iMA ( NULL , PERIOD_M15 , 3 , 0 , MODE_EMA , PRICE_CLOSE ,i+ 0 );  
      MA_2_t= iMA ( NULL , PERIOD_M15 , 3 , 0 , MODE_EMA , PRICE_CLOSE ,i+ 1 );  
      signal_1 = (условие);
      signal_2 = (условие);
       if (signal_1 >= определенное число)
      ExtMapBuffer1[i]=High[i]+ 5 * Point ;
       else
         ExtMapBuffer1[i]= 0.0 ;
       if (signal_2 >= определенное число)
         ExtMapBuffer2[i]=Low[i]- 5 * Point ;         
       else
         ExtMapBuffer2[i]= 0.0 ; 
   }
   return ( 0 );
  }
//+------------------------------------------------------------------+
 
satorifx :


dist = MathAbs((NormalizeDouble(Bid,Digits)-
NormalizeDouble(ObjectGetValueByShift(TrendLineName,0),Digits))*MathPow(10,Digits));

코드는 현재 가격 수준에서 TrendLineName이라는 추세 수준까지의 거리를 찾습니다. 그러나 문제가 있습니다. 분명히 추세선이 절반 사이에 부정확하게 전달되므로 가격까지의 거리는 다른 절반에서 완전히 다른 것으로 판명되었습니다. 이 문제를 해결하는 방법은 무엇입니까? 이상적으로는 추세선이 H1에만 표시되고 개방 시간이 W1인 경우(사실상 모든 개방 시간에 대해) 계산된 거리는 동일해야 합니다.


위 인용문에 있는 질문과 관련하여 또 다른 질문: 차트에서 열린 시간과 다른 시간을 시뮬레이션하는 방법은 무엇입니까? 즉, 예를 들어 열린 D1에서 M30에 따라 계산하려면?
 
인터넷 뒤지다가 뭔가 찾았는데 아무리 애를 써도 안되고 끝!!! 후행 정지를 추가하는 것을 도와주세요)) 이것은 다음과 같이 작동해야 합니다 - 가격이 "X" 포인트만큼 상승/하강하면 후행 정지는 이 가격의 "Y" 포인트에 의해 트리거되고 이익을 따라 이동합니다. 단계 "Z". 도와주신 분들께 감사드립니다))))))

//+----------------------------------------------- --------------------+
//| sobstvennyi_probnyi_sovetnic.mq4 |
//| 안토니코 |
//| http://www.metaquotes.net |
//+----------------------------------------------- --------------------+
#재산권 "안토니코"
#속성 링크 "http://www.metaquotes.net"

//+----------------------------------------------- --------------------+
//| 전문가 초기화 기능 |
//+----------------------------------------------- --------------------+
이중 로트 = 1;
외부 이중 sl=30;
외부 이중 tp=30;
외부 이중 계수 = 2;
인폰=1;
정수 vtor=0;
정수 매체 = 3;
정수 hetver=0;
intpatn=0;


정수 초기화()
{
//----

//----
리턴(0);
}
//+----------------------------------------------- --------------------+
//| 전문가 초기화 해제 기능 |
//+----------------------------------------------- --------------------+
정수 초기화()
{
//----

//----
리턴(0);
}
//+----------------------------------------------- --------------------+
//| 전문가 시작 기능 |
//+----------------------------------------------- --------------------+
정수 시작()

{ int otkrord=OrdersTotal();
if (DayOfWeek()==폰 || DayOfWeek()==vtor || DayOfWeek()==sred || DayOfWeek()==hetver || DayOfWeek()==patn || DayOfWeek()==6 || DayOfWeek()==0 || otkrord >0) return(0);



if(OrdersHistoryTotal()==0)
{로트=1;}

if (OrderSelect(OrdersHistoryTotal()-1,SELECT_BY_POS,MODE_HISTORY))

{
if (OrderProfit()>0)
{
로트=1;
}
if (OrderProfit()<=0)
{
lot=OrderLots()*koeff; // 2를 곱합니다.
}

}


int h=TimeHour(TimeCurrent());
int m=TimeMinute(TimeCurrent());
int s=TimeSeconds(TimeCurrent());
더블 zena0= 열기[3];
더블 zena01=열기[2];


if (h==1 && m==00 && s==01 && zena0<zena01 )

{OrderSend(Symbol(), OP_BUY,lot,Ask,3,Bid-sl*Point,Ask+tp*Point,"",0,0,Green);}





if (h==1 && m==00 && s==01 && zena0>zena01)
{OrderSend(Symbol(), OP_SELL,lot,Bid,3,Ask+sl*Point,Bid-tp*Point,"",0,0,Red);
}


{if(OrdersHistoryTotal()==0)
{로트=1;}

if (OrderSelect(OrdersHistoryTotal()-1,SELECT_BY_POS,MODE_HISTORY))

{
if (OrderProfit()>0)
{
로트=1;
}
if (OrderProfit()<=0)
{
lot=OrderLots()*koeff; // 손실 거래 후 2를 곱합니다.
}

}




더블 zena1= 열기[5];
더블 zena11=열기[4];

if (h==3 && m==00 && s==01 && zena1>zena11)
{



OrderSend(Symbol(), OP_BUY,lot,Ask,3,Bid-sl*Point,Ask+tp*Point,"",0,0,Green);}
if (h==14 && m==00 && s==01 && zena1<zena11)
{OrderSend(Symbol(), OP_SELL,lot,Bid,3,Ask+sl*Point,Bid-tp*Point,"",0,0,Red);

}
}

리턴(0);
}

//+----------------------------------------------- --------------------+
 

문자(문자열)를 ASCII 코드로 변환하는 방법을 알려주실 수 있습니까?

대략적으로 말하면 CharToStr () 의 역함수인 함수가 필요합니다.

 
Heroix :

문자(문자열)를 ASCII 코드로 변환하는 방법을 알려주실 수 있습니까?

대략적으로 말하면 CharToStr () 의 역함수인 함수가 필요합니다.


 

좋은 오후에요.

도와주세요 코드가 필요합니다

그래프 현재 그래프

새 막대 를 열 때 주문을 열어야 합니다.

새로운 바

 
sannin :

좋은 오후에요.

도와주세요 코드가 필요합니다

그래프 현재 그래프

새 바를 열 때 주문을 열어야 합니다.

새로운 바

괜찮아요!

필요한 코드 작성을 시작하십시오. 어려운 경우 질문을 하고 작성한 코드의 일부를 시연하면 경험 많은 동료가 실수한 부분을 알려줄 것입니다.

 

안녕 모두.

그런 질문이 있었습니다. 테스터에서 예를 들어 시간별 차트를 보면 주는 00:00에 시작합니다. 외환 주는 20:15 GMT에 시작하는 것으로 알려져 있습니다. 즉, 테스터의 시간에서 GMT 시간을 얻으려면 대략적으로 말하자면 20시간을 더하고 모듈로를 24로 나눕니다. 맞죠?

 
왜 정확히 20:15에 중개인이 열릴 때 열릴 것입니다
 
좋은 하루 되세요. 정보를 얻을 수 있는 곳을 알려주세요. 엿보는 눈에서 고문을 닫는 방법과 고문이 특정 시간 동안 작업한 다음 그 순간까지 유용하지 않게 하는 데 필요한 항목(예: 계속 작동하는 코드 도입, 이와 같은) . 미리 감사드립니다!!!