코딩 도움말 - 페이지 686

 
슈퍼 마스터가 mt4 옵션 차트 창에서 막대 수를 변경 하여 이제 제대로 작동합니다. ,, 감사합니다.
 
pls는 이 표시기의 EA를 만드는 데 도움을 줄 수 있습니까?
 
mladen :
시험해봐 아니

믈라덴 :
지금 사용해 보세요

친애하는 malden 이것은 재도색입니까 ??

 
forexislife :
테스트하지는 않았지만 "추세"를 필터링하기 위해 극단 (지그재그와 같은 방식)을 사용하기 때문에 다시 칠하는 것이 거의 확실합니다.
 
mladen :
테스트하지는 않았지만 "추세"를 필터링하기 위해 극단 (지그재그와 같은 방식)을 사용하기 때문에 다시 칠하는 것이 거의 확실합니다.
나중에 mladen은 한 번에 10개의 막대도 다시 칠하는 테스트를 거쳤습니다. 모든 가능성이 있는 경우 수정하십시오. 결과에 문제가 없습니다.
 

도와주세요. 다른 모든 것을 계속해서 덮어 쓰지 않고 내보내기 .csv 파일을 기록 된 마지막 TF 값으로 만드는 방법 ..?

//+----------------------------------------------- -------------------+
#property copyright "Copyright © 2007, MetaQuotes Software Corp."
#속성 링크 "http://www.metaquotes.ru/"

#property show_inputs
string SymbolsArray[1]={"EURUSD"};

//+----------------------------------------------- -------------------+
//| 문자열 SymbolByNumber |
//+----------------------------------------------- -------------------+
문자열 GetSymbolString(int 숫자)
{
//----
문자열 res="";
res=SymbolsArray[숫자];
//----
반환(res);
}

//+----------------------------------------------- -------------------+
//| 비디오 |

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

정수 PeriodNumber(정수)
{
int per_min;
스위치(숫자)
{
기본값: per_min=PERIOD_M1;중단;
사례 1: per_min=PERIOD_M5;중단;
}
반환(per_min);
}

//+----------------------------------------------- -------------------+
//| выводит в файл котировки + значения индикатора |
//+----------------------------------------------- -------------------+
무효 IFT_output(문자열 SymbolName, int PeriodMinutes)
{
int 크기=iBars(SymbolName,PeriodMinutes);
//----
if (크기==0) 반환;
int 핸들=FileOpen(SymbolName+PeriodMinutes+"_IFT.csv", FILE_WRITE|FILE_CSV );
if (handle<0) 반환;
FileWrite(핸들,"날짜;시간;열기;낮음;높음;닫기;볼륨;IFTm52;IFTm51;IFTm11;IFT2;RVA;RSIOMA_3;RSIOMA_5");
(int i=크기-1;i>=0;i--)
{
FileWrite(핸들,TimeToStr(iTime(SymbolName,PeriodMinutes,i))
,iClose(SymbolName,PeriodMinutes,i),iVolume(SymbolName,PeriodMinutes,i),iCustom(SymbolName,PeriodMinutes,"IFTm52",0,i),iCustom(SymbolName,PeriodMinutes,"IFTm51",i),0 (SymbolName,PeriodMinutes,"IFTm11",0,i),iCustom(SymbolName,PeriodMinutes,"IFT2",0,i),iCustom(SymbolName,PeriodMinutes,"RVA",0,i),iCustom(SymbolName,PeriodMinutes, "RSIOMA_3",0,i),iCustom(SymbolName,PeriodMinutes,"RSIOMA_5",0,i));
}
파일 닫기(핸들);
//----
반품;
}
//+----------------------------------------------- -------------------+
//| 스크립트 프로그램 시작 기능 |
//+----------------------------------------------- -------------------+
정수 시작()
{
int SymbolCounter,PeriodCounter;
//----
(SymbolCounter=1;SymbolCounter<13;SymbolCounter++)
{
(PeriodCounter=2;PeriodCounter<=20;PeriodCounter++)
{
//Print("NewBar on ",GetSymbolString(SymbolCounter),PeriodNumber(PeriodCounter),"M");
IFT_output(GetSymbolString(SymbolCounter),PeriodNumber(PeriodCounter));
}
}
//----
리턴(0);
}
//+----------------------------------------------- -------------------+
 
빨간색과 녹색 화살표가 있는 이 파란색 표시기의 이름과 위치를 아는 사람이 있습니까? 제공된 모든 정보에 감사드립니다. 감사합니다.
파일:
BlueIndi.png  87 kb
 
kostumer27 :

도와주세요. 다른 모든 것을 계속해서 덮어 쓰지 않고 내보내기 .csv 파일을 기록 된 마지막 TF 값으로 만드는 방법 ..?

//+----------------------------------------------- -------------------+
#property copyright "Copyright © 2007, MetaQuotes Software Corp."
#속성 링크 "http://www.metaquotes.ru/"

#property show_inputs
string SymbolsArray[1]={"EURUSD"};

//+----------------------------------------------- -------------------+
//| 문자열 SymbolByNumber |
//+----------------------------------------------- -------------------+
문자열 GetSymbolString(int 숫자)
{
//----
문자열 res="";
res=SymbolsArray[숫자];
//----
반환(res);
}

//+----------------------------------------------- -------------------+
//| 비디오 |

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

정수 PeriodNumber(정수)
{
int per_min;
스위치(숫자)
{
기본값: per_min=PERIOD_M1;중단;
사례 1: per_min=PERIOD_M5;중단;
}
반환(per_min);
}

//+----------------------------------------------- -------------------+
//| выводит в файл котировки + значения индикатора |
//+----------------------------------------------- -------------------+
무효 IFT_output(문자열 SymbolName, int PeriodMinutes)
{
int 크기=iBars(SymbolName,PeriodMinutes);
//----
if (크기==0) 반환;
int handle=FileOpen(SymbolName+PeriodMinutes+"_IFT.csv",FILE_WRITE|FILE_CSV);
if (handle<0) 반환;
FileWrite(핸들,"날짜;시간;열기;낮음;높음;닫기;볼륨;IFTm52;IFTm51;IFTm11;IFT2;RVA;RSIOMA_3;RSIOMA_5");
(int i=크기-1;i>=0;i--)
{
FileWrite(핸들,TimeToStr(iTime(SymbolName,PeriodMinutes,i))
,iClose(SymbolName,PeriodMinutes,i),iVolume(SymbolName,PeriodMinutes,i),iCustom(SymbolName,PeriodMinutes,"IFTm52",0,i),iCustom(SymbolName,PeriodMinutes,"IFTm51",i),0 (SymbolName,PeriodMinutes,"IFTm11",0,i),iCustom(SymbolName,PeriodMinutes,"IFT2",0,i),iCustom(SymbolName,PeriodMinutes,"RVA",0,i),iCustom(SymbolName,PeriodMinutes, "RSIOMA_3",0,i),iCustom(SymbolName,PeriodMinutes,"RSIOMA_5",0,i));
}
파일 닫기(핸들);
//----
반품;
}
//+----------------------------------------------- -------------------+
//| 스크립트 프로그램 시작 기능 |
//+----------------------------------------------- -------------------+
정수 시작()
{
int SymbolCounter,PeriodCounter;
//----
(SymbolCounter=1;SymbolCounter<13;SymbolCounter++)
{
(PeriodCounter=2;PeriodCounter<=20;PeriodCounter++)
{
//Print("NewBar on ",GetSymbolString(SymbolCounter),PeriodNumber(PeriodCounter),"M");
IFT_output(GetSymbolString(SymbolCounter),PeriodNumber(PeriodCounter));
}
}
//----
리턴(0);
}
//+----------------------------------------------- -------------------+


다음과 같이 시도하십시오.

 //+------------------------------------------------------------------+
#property copyright "Copyright © 2007, MetaQuotes Software Corp."
#property link        "http://www.metaquotes.ru/"

#property show_inputs
string SymbolsArray[ 1 ]={ "EURUSD" };

//+------------------------------------------------------------------+
//| возвращает период                                                |

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

 
int PeriodNumber( int number)
   {
   int per_min;
   switch (number)
      {
       default : per_min= PERIOD_M1 ; break ;
       case 1 : per_min= PERIOD_M5 ; break ;
      }
   return (per_min);   
   }

//+------------------------------------------------------------------+
//|   выводит в файл котировки + значения индикатора                 |
//+------------------------------------------------------------------+
void IFT_output( string _symbol, int PeriodMinutes)
   {
   int size= iBars (_symbol,PeriodMinutes);
//----
   if (size== 0 ) return ;
   int handle= FileOpen (_symbol+PeriodMinutes+ "_IFT.csv" , FILE_WRITE | FILE_READ | FILE_CSV );
   if (handle< 0 ) return ;
   if ( FileSize (handle)== 0 )
   FileWrite (handle, "Date;Time;Open;Low;High;Close;Volume;IFTm52;IFTm51;IFTm11;IFT2;RVA;RSIOMA_3;RSIOMA_5" );
   FileSeek (handle, 0 , SEEK_END );
   for ( int i=size- 1 ;i>= 0 ;i--)
      {
       FileWrite (handle, TimeToStr ( iTime (_symbol,PeriodMinutes,i))
         , iClose (_symbol,PeriodMinutes,i), iVolume (_symbol,PeriodMinutes,i), iCustom (_symbol,PeriodMinutes, "IFTm52" , 0 ,i), iCustom (_symbol,PeriodMinutes, "IFTm51" , 0 ,i), iCustom (_symbol,PeriodMinutes, "IFTm11" , 0 ,i), iCustom (_symbol,PeriodMinutes, "IFT2" , 0 ,i), iCustom (_symbol,PeriodMinutes, "RVA" , 0 ,i), iCustom (_symbol,PeriodMinutes, "RSIOMA_3" , 0 ,i), iCustom (_symbol,PeriodMinutes, "RSIOMA_5" , 0 ,i));
      }
   FileClose (handle);      
//----
   return ;
   }
//+------------------------------------------------------------------+
//| script program start function                                    |
//+------------------------------------------------------------------+
int start()
  {
   int SymbolCounter,PeriodCounter; 
//----
   for (SymbolCounter= 1 ;SymbolCounter<= ArraySize (SymbolsArray);SymbolCounter++)
      {
       for (PeriodCounter= 2 ;PeriodCounter<= 20 ;PeriodCounter++)
         {
         //Print("NewBar on ",GetSymbolString(SymbolCounter),PeriodNumber(PeriodCounter),"M");
         IFT_output(SymbolsArray[SymbolCounter- 1 ],PeriodNumber(PeriodCounter));
         }
      }
   
//----
   return ( 0 );
  }
//+------------------------------------------------------------------+
 

믈라덴 질문이 있습니다:

두 개의 아이콘이 있는 mq4에서 패널을 생성할 수 있으며 마우스로 클릭하면 차트의 클릭한 지점에 텍스트 개체 를 생성할 수 있습니까? 그렇다면 작업을 어떻게 설정해야 합니까?

저에게 어려운 부분은 onclick 이벤트인데 어떻게 처리하나요?

나는 보통 손으로 손으로 포인트를 그리는 데 사용합니다. 시장 전환점은 와인딩 텍스트로 설정된 텍스트 레이블로 생성되지만 버튼을 클릭하고, 와인딩 코드를 삽입하고, 색상과 너비를 설정하거나 복사할 때마다 지루합니다. 기존 포인트를 버리고 다음 위치로 이동하는 것이 아이디어입니다.

 
TheJurgFX :
빨간색과 녹색 화살표가 있는 이 파란색 표시기의 이름과 위치를 아는 사람이 있습니까? 제공된 모든 정보에 감사드립니다. 감사합니다.
인디가 될 수 있지만 슈퍼 신호와 같은 리페인터는 확실합니다.
사유: