[아카이브!] 어떤 전문가나 지표도 무료로 작성해 드립니다. - 페이지 109

 
sammi61 :

문제가되지 않으면 정지를 제한으로 교체하십시오. 내 요청이지만 플립을 가져 가자. 실험 할 시간이 있고 결과를 게시 할 것입니다. 내 camcohob@mail.ru 미리 감사드립니다. 씨
확인! 내일 처리하겠습니다.
 
snail09 :
확인! 내일 처리하겠습니다.

고마워요, 기다리고 있어요.
 

안녕하세요!

그러나 그러한 시스템은 당신의 능력 안에 있습니다. 거래 전략 거북이(거북이) ?

 

안녕하세요, 두 개의 tfs를 연결하는 사운드 신호로 스위치맨을 작성할 수 있습니까?

신호 조건:

1) 가장 높은 TF(예: n1)에서 AO가 0을 교차한 후 두 번째 조건에 대한 검색이 시작됩니다.

2) 2 TF 더 젊음(예: m5) AO는 같은 방향으로 0을 교차합니다(AO가 n1에서 위쪽으로 0을 교차하는 순간 AO는 이미 위쪽에 있기 때문에 반대 방향으로 가야 한다는 것은 논리적입니다. m5에서 0, 즉 롤백 후 새 교차점에 관심이 있음)

 

포럼 사용자 여러분, 질문이 있습니다.

Renko 차트와 그 사용은 이미 여기에서 한 번 이상 논의되었습니다. 나는 오랫동안 코드베이스의 Expert Advisor를 사용해 왔으며, Renko 막대를 올바르게 빌드하지만, 반대로 할 때 약간 잘못 그려지는 것은 불운입니다. 보세요, 그는 다음과 같이 그것들을 그립니다.

하지만 여기에 다른 바를 갖고 싶습니다. 그래서:


코드에서 변경해야 할 사항을 알려주세요. 내가 이해하는 한, 이 코드 섹션의 while 루프에서 무언가를 변경해야 합니다.

 bool UpTrend = High[i]+Low[i] > High[i+ 1 ]+Low[i+ 1 ];
        
             while (UpTrend && (Low[i] < PrevLow-BoxPoints || CompareDoubles(Low[i], PrevLow-BoxPoints))) {
                  PrevHigh = PrevHigh - BoxPoints;
                  PrevLow = PrevLow - BoxPoints;
                  PrevOpen = PrevHigh;
                  PrevClose = PrevLow;
 
                 FileWriteInteger (HstHandle, PrevTime, LONG_VALUE);
                 FileWriteDouble (HstHandle, PrevOpen, DOUBLE_VALUE);
                 FileWriteDouble (HstHandle, PrevLow, DOUBLE_VALUE);
 
                 if (ShowWicks && UpWick > PrevHigh) FileWriteDouble (HstHandle, UpWick, DOUBLE_VALUE);
                 else FileWriteDouble (HstHandle, PrevHigh, DOUBLE_VALUE);
                                                
                 FileWriteDouble (HstHandle, PrevClose, DOUBLE_VALUE);
                 FileWriteDouble (HstHandle, CurVolume, DOUBLE_VALUE);
                
                UpWick = 0 ;
                DnWick = EMPTY_VALUE ;
                CurVolume = 0 ;
                CurHigh = PrevLow;
                CurLow = PrevLow;  
                
                 if (PrevTime < Time[i]) PrevTime = Time[i];
                 else PrevTime++;
            }
        
             while (High[i] > PrevHigh+BoxPoints || CompareDoubles(High[i], PrevHigh+BoxPoints)) {
                  PrevHigh = PrevHigh + BoxPoints;
                  PrevLow = PrevLow + BoxPoints;
                  PrevOpen = PrevLow;
                  PrevClose = PrevHigh;
              
                 FileWriteInteger (HstHandle, PrevTime, LONG_VALUE);
                 FileWriteDouble (HstHandle, PrevOpen, DOUBLE_VALUE);
 
                     if (ShowWicks && DnWick < PrevLow) FileWriteDouble (HstHandle, DnWick, DOUBLE_VALUE);
                 else FileWriteDouble (HstHandle, PrevLow, DOUBLE_VALUE);
                                
                 FileWriteDouble (HstHandle, PrevHigh, DOUBLE_VALUE);
                 FileWriteDouble (HstHandle, PrevClose, DOUBLE_VALUE);
                 FileWriteDouble (HstHandle, CurVolume, DOUBLE_VALUE);
                
                UpWick = 0 ;
                DnWick = EMPTY_VALUE ;
                CurVolume = 0 ;
                CurHigh = PrevHigh;
                CurLow = PrevHigh;  
                
                 if (PrevTime < Time[i]) PrevTime = Time[i];
                 else PrevTime++;
            }
        
             while (!UpTrend && (Low[i] < PrevLow-BoxPoints || CompareDoubles(Low[i], PrevLow-BoxPoints))) {
                  PrevHigh = PrevHigh - BoxPoints;
                  PrevLow = PrevLow - BoxPoints;
                  PrevOpen = PrevHigh;
                  PrevClose = PrevLow;
              
                 FileWriteInteger (HstHandle, PrevTime, LONG_VALUE);
                 FileWriteDouble (HstHandle, PrevOpen, DOUBLE_VALUE);
                 FileWriteDouble (HstHandle, PrevLow, DOUBLE_VALUE);
                
                 if (ShowWicks && UpWick > PrevHigh) FileWriteDouble (HstHandle, UpWick, DOUBLE_VALUE);
                 else FileWriteDouble (HstHandle, PrevHigh, DOUBLE_VALUE);
                
                 FileWriteDouble (HstHandle, PrevClose, DOUBLE_VALUE);
                 FileWriteDouble (HstHandle, CurVolume, DOUBLE_VALUE);
 
                UpWick = 0 ;
                DnWick = EMPTY_VALUE ;
                CurVolume = 0 ;
                CurHigh = PrevLow;
                CurLow = PrevLow;  
                                
                 if (PrevTime < Time[i]) PrevTime = Time[i];
                 else PrevTime++;
            }
 
안녕하세요! 간단한 조언자를 찾도록 도와주세요. tp와 sl을 사용하여 특정 시간에 가격에서 주어진 거리에 대기 주문을 둡니다. 예: at 23:55는 10p 거리에서 주문합니다. 현재 가격에서. 즉시 mp = 10p로 설정합니다. 및 sl = 16p. 추가로: 주문이 작동하지 않으면 24:00에 삭제됩니다. 가격의 반대 쪽에 단방향 주문을 합니다. 누군가 최소한 기본 조건에 대해 글을 쓰거나 어디를 봐야 하는지 알려줄 수 있을까요? Code Base 에서 비슷한 것을 찾지 못했습니다. 도움을 주셔서 미리 감사드립니다.
 
프로그램 수정을 도와주세요. 매수 매도 신호가 떴을 때 인디케이터가 소리를 내도록 하고 싶은데 뭔가 안되네요!! 미리 감사드립니다)

//+----------------------------------------------- --------------------+
//| SilverTrend_Signal.mq4
//| Ramdass - 변환 전용
//+----------------------------------------------- --------------------+
#property copyright "CrazyChart가 재작성한 SilverTrend"
#속성 링크 "http://viac.ru/"

#속성 표시기_차트_창
#속성 표시기_버퍼 2
#property indicator_color1 아쿠아
#property indicator_color2 바이올렛

//---- 입력 매개변수
extern int 위험 = 3;
외부 정수 CountBars=350;
extern bool SoundAlert = true;
intSSP=9;

//---- 버퍼
이중 val1[];
이중 val2[];

//+----------------------------------------------- --------------------+
//| 사용자 지정 표시기 초기화 기능 |
//+----------------------------------------------- --------------------+
정수 초기화()
{
문자열 short_name;
//---- 표시줄
표시기버퍼(2);
SetIndexStyle(0,DRAW_ARROW);
SetIndexArrow(0,233);
SetIndexStyle(1,DRAW_ARROW);
SetIndexArrow(1,234);
SetIndexBuffer(0, val1);
SetIndexBuffer(1, val2);
//----
리턴(0);
}
//+----------------------------------------------- --------------------+
//| SilverTrend_Signal |
//+----------------------------------------------- --------------------+
정수 시작()
{
if (CountBars>=막대) CountBars=막대;
SetIndexDrawBegin(0,바-카운트바+SSP);
SetIndexDrawBegin(1,바-카운트바+SSP);
int i,shift,counted_bars=IndicatorCounted();
정수 i1,i2,K;
이중 범위, AvgRange, smin, smax, SsMax, SsMin, 가격;
bool 상승세, old;
//----

if(바<=SSP+1) return(0);
//---- 초기 0
if(counted_bars<SSP+1)
{
for(i=1;i<=SSP;i++) val1[CountBars-i]=0.0;
for(i=1;i<=SSP;i++) val2[CountBars-i]=0.0;
}
//----

K=33-위험;
(shift = CountBars-SSP, shift>=0, shift--)
{

범위=0;
평균 범위=0;
(i1=시프트; i1<=시프트+SSP; i1++)
{AvgRange=AvgRange+MathAbs(높음[i1]-낮음[i1]);
}
범위=AvgRange/(SSP+1);

SsMax=높음[시프트]; SsMin=낮음[시프트];
(i2=시프트;i2<=시프트+SSP-1;i2++)
{
가격=높음[i2];
if(SsMax<가격) SsMax=가격;
가격=낮음[i2];
if(SsMin>=가격) SsMin=가격;
}

smin = SsMin+(SsMax-SsMin)*K/100;
smax = SsMax-(SsMax-SsMin)*K/100;
val1[시프트]=0;
val2[시프트]=0;
if (닫기[shift]<smin)
{
상승 추세=거짓;
}
if (닫기[shift]>smax)
{
상승 추세 = 사실;
}
if (uptrend!=old && uptrend==true) {val1[shift]=Low[shift]-Range*0.5;}
if (uptrend!=old && uptrend==false) {val2[shift]=High[shift]+Range*0.5;}
오래된 = 상승세;
}
리턴(0);
}
//+----------------------------------------------- --------------------+
무효 SendAlert(문자열 txt) {
if (시간[0] != tt) {
if (SoundAlert) {
if (txt == "구매") Alert("장기 추세" + Symbol() + ", " + Period());
if (txt == "매도") Alert("매도 추세" + Symbol() + ", " + Period());
}
tt = 시간[0];
}
}
 
마틴게일 없이 흥미로운 지표 전략에 대한 조언자를 무료로 작성해 드립니다. PM의 TK 또는 비누 mqlskeptik@yandex.ua
 
안녕하세요 여러분, 저를 도와주실 수 있으신가요? 저는 좀 더 시각적인 볼륨 표시기 를 만들고 싶습니다. 양초당 얼마를 사고 팔았는지 보여주기 위함입니다. 그리고 볼륨을 조준하면 데이터가 있는 창이 나타납니다. 나는 볼륨으로 거래하고 이것은 나에게 많은 도움이 될 것입니다. 저는 이렇게 상상합니다. 미리 감사드립니다!
 

지점이 닫혀 있기 때문입니다. 그 기능은 오랫동안 수행되지 않았습니다.

주제 작성자( https://www.mql5.com/ru/users/kubodel/ )에게 직접 글을 쓰고 싶은 모든 사람에게 묻습니다.

모든 새 게시물은 경고 없이 삭제됩니다.

사유: