이 표시기에서 4자리 따옴표를 사용할 때 몇 가지 문제가 있습니다. 근데 그게 중요한게 아니라 4자리에서 100레벨까지의 스케일이 문제인데, 사진을 보여주려고 했더니, 적시에 보는게 눈이 많이 뻑뻑합니다(며칠 지나면 실처럼 스케일을 바꾸는게 40 수준으로 - 현재 값을 나타내는 텍스트의 오른쪽 모서리와 히스토그램을 보는 것이 더 나을까요?
Оставлю оригинальный текст на русском, тк возможны искажения при переводе(
У этого индикатора есть некоторые проблемы при использовании 4 значных котировок. Но это не критично, самая проблемы это масштабирование на 4 значном до уровня 100, постарался показать на картинках, разглядывать нужный момент весьма напрягает глаза( после нескольких дней, можно ли как нить поменять масштаб до уровня 40 - что бы лучше было видно гистограммы и в правом углу текстом что бы обозначалось текущее значение? Еще не могу понять почему понявляют
이 표시기에서 4자리 따옴표를 사용할 때 몇 가지 문제가 있습니다. 근데 그게 중요한게 아니라 문제는 4자리에서 100레벨까지의 스케일인데, 사진을 보여주려고 했는데, 적절한 시기에 눈이 많이 피로해졌습니다.(며칠 후, 실처럼 스케일을 바꾸는게 40 수준으로 - 현재 값을 나타내는 텍스트의 오른쪽 모서리와 히스토그램을 보는 것이 더 나을까요?
Оставлю оригинальный текст на русском, тк возможны искажения при переводе(
У этого индикатора есть некоторые проблемы при использовании 4 значных котировок. Но это не критично, самая проблемы это масштабирование на 4 значном до уровня 100, постарался показать на картинках, разглядывать нужный момент весьма напрягает глаза( после нескольких дней, можно ли как нить поменять масштаб до уровня 40 - что бы лучше было видно гистограммы и в правом углу текстом что бы обозначалось текущее значение?
그리고 저는 새로운 메타트레이더 4 빌드가 등장한 이후로 무언가 디컴파일될 수 있다고 말하는 사람은 단순히 거짓말이라고 말할 수 있어서 기쁩니다. 주석은 전 세계의 모든 컴파일러에 의해 완전히 제거 됩니다. 그래서 그는 어떤 종류의 실행 가능한 코드 생성에 대한 기본 사항을 모를 때 이전 빌드에서 디컴파일러를 사용할 때 코딩에 대해 얼마나 배웠습니까?).
사용할 수 있으면 사용하십시오. 할 수 없다면 할 수 없습니다. 당신은 그것을 무료로 얻었다. 문제가 무엇입니까? 변경? 무언가를 변경하도록 요청할 수 있는 무언가의 작성자는 항상 있습니다. 그러나 저자가 자신이 만들고 모든 사람에게 제공한 것을 분명히 도살하고 싶어하는 것을 본다면 그는 왜 다시 글을 올리겠습니까? 원작자가 없는 척하고 역활을? 모두에게 공짜로 주어지는 것을 위해? 그것은 그가 당신에게 좋은 하루를 보냈다는 이유로 누군가의 얼굴에 침을 뱉는 것과 같습니다
그리고 저는 새로운 메타트레이더 4 빌드가 등장한 이후로 무언가 디컴파일될 수 있다고 말하는 사람은 단순히 거짓말이라고 말할 수 있어서 기쁩니다. 주석은 전 세계의 모든 컴파일러에 의해 완전히 제거됩니다. 그래서 그는 어떤 종류의 실행 가능한 코드 생성에 대한 기본 사항을 모를 때 이전 빌드에서 디컴파일러를 사용할 때 코딩에 대해 얼마나 배웠습니까?).
사용할 수 있으면 사용하십시오. 할 수 없다면 할 수 없습니다. 당신은 그것을 무료로 얻었다. 문제가 무엇입니까? 변경? 무언가를 변경하도록 요청할 수 있는 무언가의 작성자는 항상 있습니다. 그러나 저자가 자신이 만들고 모든 사람에게 제공한 것을 분명히 도살하고 싶어하는 것을 본다면 그는 왜 다시 글을 올리겠습니까? 원작자가 없는 척 하고 역활을 하는건가? 모두에게 공짜로 주어지는 것을 위해? 그것은 그가 당신에게 좋은 하루를 보냈다는 이유로 누군가의 얼굴에 침을 뱉는 것과 같습니다
불행히도 나는 저자가 누구인지 모르지만 여기에 적용됩니다.
이 표시기는 TMA의 한 지점에서도 찾을 수 있습니다. 귀하의 게시물에서
디컴파일 (
글쎄, 일반적으로 갑자기이 표시기의 mq4가되면 이해합니다. 도와 주시겠습니까?
아마도 번역을 왜곡할 때 나는 후자의 댓글에서 특정 공격성을 알아차렸거나 그냥 생각했습니다 =)
갑자기 내 요청에 nebylo 또는 나쁜 의도가 있었다면 포럼을 읽는 것만으로 지적
당신 mladen 및 mrtools - 그들의 분야에서 전문적으로, 이것은 당신에게 연락하기로 결정했습니다.
나는 원본을 러시아어로 남겨두고 왜곡의 경우를 전송합니다.
К сожалению я не знаю кто автор, по этому обратился сюда, индикатор тоже нашел здесь в о ветке
из вашего поста я понял что при декомлиляции он может уже не правильно работать(
Ладно, в общем понимаю, если вдруг у меня будет mq4 этого индикатора, вы мне сможете помочь?
Возможно при искажении перевода я заметил некую агрессию в последнем коментарии, ила просто по
Если вдруг она была, то в моей просьбе небыло ни какого умысла плохого, просто читая форум
обратил внимание что Вы и mrtools - профессионалы в своей области, по этому и решил обратиться к Ва
//---- return ( 0 ); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int start() { int limit, i, counter; double fasterEMA1now, slowerEMA1now, fasterEMA1previous, slowerEMA1previous, fasterEMA2now, slowerEMA2now, fasterEMA2previous, slowerEMA2previous; double RSInow; double Range, AvgRange;
int counted_bars= IndicatorCounted (); //---- check for possible errors if (counted_bars< 0 ) return (- 1 ); //---- last counted bar will be recounted if (counted_bars> 0 ) counted_bars--;
지금 사용해 보세요
게시한 다음 확인할 수 있습니다.
이 표시기에서 4자리 따옴표를 사용할 때 몇 가지 문제가 있습니다. 근데 그게 중요한게 아니라 4자리에서 100레벨까지의 스케일이 문제인데, 사진을 보여주려고 했더니, 적시에 보는게 눈이 많이 뻑뻑합니다(며칠 지나면 실처럼 스케일을 바꾸는게 40 수준으로 - 현재 값을 나타내는 텍스트의 오른쪽 모서리와 히스토그램을 보는 것이 더 나을까요?
Оставлю оригинальный текст на русском, тк возможны искажения при переводе(
У этого индикатора есть некоторые проблемы при использовании 4 значных котировок. Но это не критично, самая проблемы это масштабирование на 4 значном до уровня 100, постарался показать на картинках, разглядывать нужный момент весьма напрягает глаза( после нескольких дней, можно ли как нить поменять масштаб до уровня 40 - что бы лучше было видно гистограммы и в правом углу текстом что бы обозначалось текущее значение? Еще не могу понять почему понявляют
이 표시기에서 4자리 따옴표를 사용할 때 몇 가지 문제가 있습니다. 근데 그게 중요한게 아니라 문제는 4자리에서 100레벨까지의 스케일인데, 사진을 보여주려고 했는데, 적절한 시기에 눈이 많이 피로해졌습니다.(며칠 후, 실처럼 스케일을 바꾸는게 40 수준으로 - 현재 값을 나타내는 텍스트의 오른쪽 모서리와 히스토그램을 보는 것이 더 나을까요?
Оставлю оригинальный текст на русском, тк возможны искажения при переводе(
У этого индикатора есть некоторые проблемы при использовании 4 значных котировок. Но это не критично, самая проблемы это масштабирование на 4 значном до уровня 100, постарался показать на картинках, разглядывать нужный момент весьма напрягает глаза( после нескольких дней, можно ли как нить поменять масштаб до уровня 40 - что бы лучше было видно гистограммы и в правом углу текстом что бы обозначалось текущее значение?
죄송합니다. ex4 파일을 변경할 수 없습니다.
mq4를 디컴파일하는 것에 대해 더 생각해 볼 수 있습니까?Можешь подкинуть мысль как еще декомпилировать в mq4?죄송합니다. 디컴파일은 제가 좋아하는 것이 아닙니다.
그리고 저는 새로운 메타트레이더 4 빌드가 등장한 이후로 무언가 디컴파일될 수 있다고 말하는 사람은 단순히 거짓말이라고 말할 수 있어서 기쁩니다. 주석은 전 세계의 모든 컴파일러에 의해 완전히 제거 됩니다. 그래서 그는 어떤 종류의 실행 가능한 코드 생성에 대한 기본 사항을 모를 때 이전 빌드에서 디컴파일러를 사용할 때 코딩에 대해 얼마나 배웠습니까?).
사용할 수 있으면 사용하십시오. 할 수 없다면 할 수 없습니다. 당신은 그것을 무료로 얻었다. 문제가 무엇입니까? 변경? 무언가를 변경하도록 요청할 수 있는 무언가의 작성자는 항상 있습니다. 그러나 저자가 자신이 만들고 모든 사람에게 제공한 것을 분명히 도살하고 싶어하는 것을 본다면 그는 왜 다시 글을 올리겠습니까? 원작자가 없는 척하고 역활을? 모두에게 공짜로 주어지는 것을 위해? 그것은 그가 당신에게 좋은 하루를 보냈다는 이유로 누군가의 얼굴에 침을 뱉는 것과 같습니다
죄송합니다. 디컴파일은 제가 좋아하는 것이 아닙니다.
그리고 저는 새로운 메타트레이더 4 빌드가 등장한 이후로 무언가 디컴파일될 수 있다고 말하는 사람은 단순히 거짓말이라고 말할 수 있어서 기쁩니다. 주석은 전 세계의 모든 컴파일러에 의해 완전히 제거됩니다. 그래서 그는 어떤 종류의 실행 가능한 코드 생성에 대한 기본 사항을 모를 때 이전 빌드에서 디컴파일러를 사용할 때 코딩에 대해 얼마나 배웠습니까?).
사용할 수 있으면 사용하십시오. 할 수 없다면 할 수 없습니다. 당신은 그것을 무료로 얻었다. 문제가 무엇입니까? 변경? 무언가를 변경하도록 요청할 수 있는 무언가의 작성자는 항상 있습니다. 그러나 저자가 자신이 만들고 모든 사람에게 제공한 것을 분명히 도살하고 싶어하는 것을 본다면 그는 왜 다시 글을 올리겠습니까? 원작자가 없는 척 하고 역활을 하는건가? 모두에게 공짜로 주어지는 것을 위해? 그것은 그가 당신에게 좋은 하루를 보냈다는 이유로 누군가의 얼굴에 침을 뱉는 것과 같습니다
불행히도 나는 저자가 누구인지 모르지만 여기에 적용됩니다. 이 표시기는 TMA의 한 지점에서도 찾을 수 있습니다. 귀하의 게시물에서 디컴파일 (안녕하세요 여러분 저는 4개의 ema 교차가 발생하고 rsi가 > 또는 < 50일 때 위쪽 또는 아래쪽 화살표를 표시할 수 있는 ema-rsi 표시기를 편집하려고 합니다.
내 문제는 이러한 화살표가 표시될 때마다 틱마다 새로 고쳐지지 않는다는 것입니다. 화살표를 표시할 수 있는 조건이 여전히 양호한지 확인하려면 기간을 변경해야 합니다. 어디가 문제인지 알려주실 수 있나요? 나는 코드를 게시합니다.
고맙습니다
#property indicator_buffers 2
#property indicator_color1 Green
#property indicator_color2 Red
#property indicator_width1 4
#property indicator_width2 4
double CrossUp[];
double CrossDown[];
extern int FasterEMA1 = 6 ;
extern int SlowerEMA1 = 12 ;
extern int FasterEMA2 = 7 ;
extern int SlowerEMA2 = 14 ;
extern int RSInowPeriod = 6 ;
extern int barsBack = 2000 ;
extern bool AlertsMessage = true ;
extern bool AlertsSound = true ;
extern bool debug = false ;
extern double K = 1.0 ;
bool EMACrossedUp = false ;
bool RSICrossedUp = false ;
bool EMACrossedDown = false ;
bool RSICrossedDown = false ;
int SignalLabeled = 0 ; // 0: initial state; 1: up; 2: down.
int upalert= false ,downalert= false ;
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
//---- indicators
SetIndexStyle ( 0 , DRAW_ARROW , EMPTY );
SetIndexArrow ( 0 , 241 );
SetIndexBuffer ( 0 , CrossUp);
SetIndexStyle ( 1 , DRAW_ARROW , EMPTY );
SetIndexArrow ( 1 , 242 );
SetIndexBuffer ( 1 , CrossDown);
//----
return ( 0 );
}
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return ( 0 );
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start() {
int limit, i, counter;
double fasterEMA1now, slowerEMA1now, fasterEMA1previous, slowerEMA1previous, fasterEMA2now, slowerEMA2now, fasterEMA2previous, slowerEMA2previous;
double RSInow;
double Range, AvgRange;
int counted_bars= IndicatorCounted ();
//---- check for possible errors
if (counted_bars< 0 ) return (- 1 );
//---- last counted bar will be recounted
if (counted_bars> 0 ) counted_bars--;
limit= MathMin ( Bars -counted_bars,barsBack);
for (i = limit; i>= 0 ; i--) {
counter=i;
Range= 0 ;
AvgRange= 0 ;
for (counter=i ;counter<=i+ 9 ;counter++)
{
AvgRange=AvgRange+ MathAbs ( High [counter]- Low [counter]);
}
Range=AvgRange/ 10 ;
fasterEMA1now = iMA ( NULL , 0 , FasterEMA1, 0 , MODE_EMA , PRICE_CLOSE , i);
fasterEMA1previous = iMA ( NULL , 0 , FasterEMA1, 0 , MODE_EMA , PRICE_CLOSE , i+ 1 );
fasterEMA2now = iMA ( NULL , 0 , FasterEMA2, 0 , MODE_EMA , PRICE_CLOSE , i);
fasterEMA2previous = iMA ( NULL , 0 , FasterEMA2, 0 , MODE_EMA , PRICE_CLOSE , i+ 1 );
slowerEMA1now = iMA ( NULL , 0 , SlowerEMA1, 0 , MODE_EMA , PRICE_CLOSE , i);
slowerEMA1previous = iMA ( NULL , 0 , SlowerEMA1, 0 , MODE_EMA , PRICE_CLOSE , i+ 1 );
slowerEMA2now = iMA ( NULL , 0 , SlowerEMA2, 0 , MODE_EMA , PRICE_CLOSE , i);
slowerEMA2previous = iMA ( NULL , 0 , SlowerEMA2, 0 , MODE_EMA , PRICE_CLOSE , i+ 1 );
RSInow= iRSI ( NULL , 0 ,RSInowPeriod, PRICE_CLOSE ,i);
if (RSInow > 50 ) {
if (debug) Print ( TimeToStr ( Time [i], TIME_DATE )+ TimeToStr ( Time [i], TIME_SECONDS )+ " RSI UP " );
RSICrossedUp = true ;
RSICrossedDown = false ;
}
if (RSInow < 50 ) {
if (debug) Print ( TimeToStr ( Time [i], TIME_DATE )+ TimeToStr ( Time [i], TIME_SECONDS )+ " RSI DOWN " );
RSICrossedUp = false ;
RSICrossedDown = true ;
}
if ((fasterEMA1now >= slowerEMA1now) && (fasterEMA1previous < slowerEMA1previous) && (fasterEMA2now >= slowerEMA2now) && (fasterEMA2previous < slowerEMA2previous) ) {
if (debug) Print ( TimeToStr ( Time [i], TIME_DATE )+ TimeToStr ( Time [i], TIME_SECONDS )+ " EMA UP " );
EMACrossedUp = true ;
EMACrossedDown = false ;
}
if ((fasterEMA1now <= slowerEMA1now) && (fasterEMA1previous > slowerEMA1previous) && (fasterEMA2now <= slowerEMA2now) && (fasterEMA2previous > slowerEMA2previous)) {
if (debug) Print ( TimeToStr ( Time [i], TIME_DATE )+ TimeToStr ( Time [i], TIME_SECONDS )+ " EMA DOWN " );
EMACrossedUp = false ;
EMACrossedDown = true ;
}
if ((EMACrossedUp == true ) && (RSICrossedUp == true ) && (SignalLabeled != 1 )) {
CrossUp[i] = Low [i] - K*Range;
if (debug) Print ( TimeToStr ( Time [i], TIME_DATE )+ TimeToStr ( Time [i], TIME_SECONDS )+ " SIGNAL UP " );
if (i<= 2 && AlertsMessage && !upalert)
{
Alert ( Symbol (), " " , Period (), "M BUY SIGNAL " );
//SendMail("EMA Cross Up on "+Symbol(),"");
upalert= true ;
downalert= false ;
}
if (i<= 2 && AlertsSound && !upalert)
{
PlaySound ( "alert.wav" );
upalert= true ;
downalert= false ;
}
SignalLabeled = 1 ;
}
else if ((EMACrossedDown == true ) && (RSICrossedDown == true ) && (SignalLabeled != 2 )) {
CrossDown[i] = High [i] + K*Range;
if (debug) Print ( TimeToStr ( Time [i], TIME_DATE )+ TimeToStr ( Time [i], TIME_SECONDS )+ " SIGNAL DOWN " );
if (i<= 2 && AlertsMessage && !downalert)
{
Alert ( Symbol (), " " , Period (), "M SELL SIGNAL " );
//SendMail("EMA Cross Down on "+Symbol(),"");
downalert= true ;
upalert= false ;
}
if (i<= 2 && AlertsSound && !downalert)
{
PlaySound ( "alert.wav" );
downalert= true ;
upalert= false ;
}
SignalLabeled = 2 ;
}
}
return ( 0 );
}
//end
안녕하세요 mladen 씨:
추세가 변경될 때 이 지표에 수직선을 추가할 수 있습니까(제로 크로스)
비슷한 이 그림:
관심