코딩 도움말 - 페이지 160

 
TEAMTRADER:
스레드 중 하나에서 이 표시기를 다운로드했으며 CCI 영역 또는 Ma 영역 표시기보다 훨씬 낫습니다.

영역 표시기와 같이 화면에 표시되도록 조정할 수 있습니까?

CCI 설정 13으로 설정되어 있지만 변수 설정 표시기로 쉽게 만들 수 있다면 그것은 보너스가 될 것이지만 매우 부차적인 요청입니다.

Forex-TSD 표시기이지만 mq4 폴더가 없습니다.

감사해요

팀 트레이더

내가 아는 한 그것은 cci가 아니라 thv t3 trix입니다. thv trix의 변형 중 일부를 검색해야 합니다.

 

mladen, 나는 전날의 고가와 저가에 대한 선을 그리는 표시기를 첨부했습니다.하지만 3개의 일일 이전 고가와 저가를 표시하는 동일한 표시가 필요합니다. 도와주실 수 있나요?미리 감사합니다

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

//| Copyright © 2008, ledxep |

//| http://www.metaquotes.net/ |

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

#property copyright "Copyright © 2008, ledzep"

#property link "http://www.metaquotes.net/"

#property indicator_chart_window

#property indicator_buffers 1

#property indicator_color1 Blue

//---- input parameters

double DayHigh,DayLow,DayHigh1,DayLow1;

int ObjectIdx;

int DayIdx;

int k;

string ObjName;

datetime StartTime;

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

//| Custom indicator initialization function |

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

int init()

{

return(0);

}

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

//| Deinitialization function |

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

int deinit()

{

ObjectsDeleteAll();

return(0);

}

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

//| Start function |

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

int start()

{

static bool first=true;

int i,counted_bars=IndicatorCounted();

double BarHour,BarMinute;

int WeekDay;

if(Bars<3) return(0);

i=Bars-3;

if(counted_bars==0 || first)

{

first=false;

while(i>=0)

{

TrendLine(StartTime,DayHigh1,Time,DayHigh1,Red);

TrendLine(StartTime,DayLow1,Time,DayLow1,Red);

if(High > DayHigh) DayHigh = High;

if(Low < DayLow) DayLow = Low;

if(TimeDay(Time) != TimeDay(Time))

{

DayHigh1=DayHigh;

DayLow1=DayLow;

DayHigh=Open;

DayLow=Open;

StartTime=Time;

}

i--;

}//while close

}

return(0);

}//start close

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

void TrendLine(datetime x1, double y1, datetime x2, double y2, color col)

{

ObjectIdx++;

ObjName="Line" + DoubleToStr(ObjectIdx,0);

ObjectCreate(ObjName, OBJ_TREND, 0, x1, y1, x2, y2);

ObjectSet(ObjName,OBJPROP_COLOR,col);

ObjectSet(ObjName,OBJPROP_RAY,0);

}

 
k3rn3l:
mladen, 나는 전날의 고가와 저가에 대한 선을 그리는 표시기를 첨부했습니다. 하지만 3개의 일일 이전 고가와 저가를 표시하는 동일한 표시가 필요합니다. 도와주실 수 있나요?미리 감사합니다.

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

//| Copyright © 2008, ledxep |

//| http://www.metaquotes.net/ |

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

#property copyright "Copyright © 2008, ledzep"

#property link "http://www.metaquotes.net/"

#property indicator_chart_window

#property indicator_buffers 1

#property indicator_color1 Blue

//---- input parameters

double DayHigh,DayLow,DayHigh1,DayLow1;

int ObjectIdx;

int DayIdx;

int k;

string ObjName;

datetime StartTime;

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

//| Custom indicator initialization function |

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

int init()

{

return(0);

}

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

//| Deinitialization function |

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

int deinit()

{

ObjectsDeleteAll();

return(0);

}

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

//| Start function |

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

int start()

{

static bool first=true;

int i,counted_bars=IndicatorCounted();

double BarHour,BarMinute;

int WeekDay;

if(Bars<3) return(0);

i=Bars-3;

if(counted_bars==0 || first)

{

first=false;

while(i>=0)

{

TrendLine(StartTime,DayHigh1,Time,DayHigh1,Red);

TrendLine(StartTime,DayLow1,Time,DayLow1,Red);

if(High > DayHigh) DayHigh = High;

if(Low < DayLow) DayLow = Low;

if(TimeDay(Time) != TimeDay(Time))

{

DayHigh1=DayHigh;

DayLow1=DayLow;

DayHigh=Open;

DayLow=Open;

StartTime=Time;

}

i--;

}//while close

}

return(0);

}//start close

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

void TrendLine(datetime x1, double y1, datetime x2, double y2, color col)

{

ObjectIdx++;

ObjName="Line" + DoubleToStr(ObjectIdx,0);

ObjectCreate(ObjName, OBJ_TREND, 0, x1, y1, x2, y2);

ObjectSet(ObjName,OBJPROP_COLOR,col);

ObjectSet(ObjName,OBJPROP_RAY,0);

}

이해하지 못할까 두렵다

해당 지표는 전체 기록(차트에 있는 날짜만큼)에 대해 전날의 고가와 저가를 그립니다. "3일 이전 최고가와 최저치를 표시"한다는 것은 정확히 무엇을 의미합니까?

 
mladen:
이해가 안 가나 봅니다. 그 지표는 전일(차트에 있는 일수만큼)에 걸쳐 전일의 고가와 저가를 그립니다. "3일 이전 최고가와 최저치를 표시"한다는 것은 정확히 무엇을 의미합니까?

설명하자면, 지표가 매일 그렸으면 좋겠어, 지난 3일의 고점과 저점

 
k3rn3l:
설명하자면, 지표가 매일 그렸으면 좋겠어, 지난 3일의 고점과 저점

다음과 같이 시도하십시오(이것은 객체를 사용하지 않고 버퍼를 사용하며 최고 최고 및 최저 최저에 사용할 일 수를 설정할 수 있습니다)

#property indicator_chart_window

#property indicator_buffers 2

#property indicator_color1 LimeGreen

#property indicator_color2 Red

extern int DaysForHighLow = 3;

double buffh[];

double buffl[];

//------------------------------------------------------------------

//

//------------------------------------------------------------------

int init()

{

SetIndexBuffer(0,buffh);

SetIndexBuffer(1,buffl);

return(0);

}

int start()

{

int counted_bars=IndicatorCounted();

if(counted_bars<0) return(-1);

if(counted_bars>0) counted_bars--;

int limit = MathMin(Bars-counted_bars,Bars-1);

for (int i=limit; i>=0; i--)

{

int y = iBarShift(NULL,PERIOD_D1,Time);

buffh = iHigh(NULL,PERIOD_D1,iHighest(NULL,PERIOD_D1,MODE_HIGH,DaysForHighLow,y));

buffl = iLow(NULL,PERIOD_D1,iLowest(NULL,PERIOD_D1,MODE_LOW,DaysForHighLow,y));

}

return(0);

}
 
mladen:
다음과 같이 시도하십시오(이것은 객체를 사용하지 않고 버퍼를 사용하며 최고 최고 및 최저 최저에 사용할 일 수를 설정할 수 있습니다)
#property indicator_chart_window

#property indicator_buffers 2

#property indicator_color1 LimeGreen

#property indicator_color2 Red

extern int DaysForHighLow = 3;

double buffh[];

double buffl[];

//------------------------------------------------------------------

//

//------------------------------------------------------------------

int init()

{

SetIndexBuffer(0,buffh);

SetIndexBuffer(1,buffl);

return(0);

}

int start()

{

int counted_bars=IndicatorCounted();

if(counted_bars<0) return(-1);

if(counted_bars>0) counted_bars--;

int limit = MathMin(Bars-counted_bars,Bars-1);

for (int i=limit; i>=0; i--)

{

int y = iBarShift(NULL,PERIOD_D1,Time);

buffh = iHigh(NULL,PERIOD_D1,iHighest(NULL,PERIOD_D1,MODE_HIGH,DaysForHighLow,y));

buffl = iLow(NULL,PERIOD_D1,iLowest(NULL,PERIOD_D1,MODE_LOW,DaysForHighLow,y));

}

return(0);

}

mladen에게 감사합니다. 잘못된 설명을 해서 죄송합니다...저는 이전 3일마다 최고가와 최저가를 의미했습니다. 예를 들어 PreviousHighDaily[1],PreviuosHighDaily[2],PreviousHighDaily[3] 및 낮은 경우에도 마찬가지입니다...

 
k3rn3l:
mladen에게 감사합니다. 잘못된 설명을 해서 죄송합니다...저는 이전 3일마다 최고가와 최저가를 의미했습니다. 예를 들어 PreviousHighDaily[1],PreviuosHighDaily[2],PreviousHighDaily[3] 및 낮은 경우에도 마찬가지입니다...

이전보다 찾기가 더 쉽습니다( 함수 호출이 적음).

다음과 같이 할 수 있습니다.

#property indicator_chart_window

#property indicator_buffers 6

#property indicator_color1 LimeGreen

#property indicator_color2 Red

#property indicator_color3 LimeGreen

#property indicator_color4 Red

#property indicator_color5 LimeGreen

#property indicator_color6 Red

#property indicator_width1 2

#property indicator_width2 2

#property indicator_style5 STYLE_DOT

#property indicator_style6 STYLE_DOT

double buffh1[];

double buffl1[];

double buffh2[];

double buffl2[];

double buffh3[];

double buffl3[];

//------------------------------------------------------------------

//

//------------------------------------------------------------------

int init()

{

SetIndexBuffer(0,buffh1);

SetIndexBuffer(1,buffl1);

SetIndexBuffer(2,buffh2);

SetIndexBuffer(3,buffl2);

SetIndexBuffer(4,buffh3);

SetIndexBuffer(5,buffl3);

return(0);

}

int start()

{

int counted_bars=IndicatorCounted();

if(counted_bars<0) return(-1);

if(counted_bars>0) counted_bars--;

int limit = MathMin(Bars-counted_bars,Bars-1);

for (int i=limit; i>=0; i--)

{

int y = iBarShift(NULL,PERIOD_D1,Time);

buffh1 = iHigh(NULL,PERIOD_D1,y+1);

buffl1 = iLow(NULL,PERIOD_D1,y+1);

buffh2 = iHigh(NULL,PERIOD_D1,y+2);

buffl2 = iLow(NULL,PERIOD_D1,y+2);

buffh3 = iHigh(NULL,PERIOD_D1,y+3);

buffl3 = iLow(NULL,PERIOD_D1,y+3);

}

return(0);

}

추신: 가장 두꺼운 선은 1일 전, 가는 선은 2일 전, 점선은 3일 전입니다.

 

코딩 도와주세요...........

여기 있는 전문가 여러분, 안녕하세요. 마지막 작업 주문의 TP를 현재 열려 있는 주문과 동일하게 자동으로 수정하는 간단한 EA를 코딩하는 데 도움을 줄 수 있는 사람이 있습니까? 내가 하나 이상의 작업 주문과 몇 개의 보류 주문 이 있다고 가정해 보겠습니다. 보류 주문이 작업 주문이 되면 EA가 이전 작업 주문의 TP(목표 가격)를 현재 주문으로 자동 수정하기를 바랍니다. 감사합니다 ....

 
jeffyap:
Coding help pls........... 전문가 여러분 안녕하세요. 방금 열린 현재 주문과 동일한 마지막 작업 주문의 TP를 자동으로 수정하는 간단한 EA를 코딩하는 데 도움을 줄 사람이 있습니까? 내가 하나 이상의 작업 주문과 몇 개의 보류 주문이 있다고 가정해 보겠습니다. 보류 주문이 작업 주문이 되면 EA가 이전 작업 주문의 TP(목표 가격)를 현재 주문으로 자동 수정하기를 바랍니다. 감사합니다 ....

모든 주문에 대해 일반 후행 정지를 사용하지 않는 이유는 무엇입니까? 그렇게하면 새 주문을 열 필요없이 결국 (여러 주문이있는 경우) 균등화됩니다.

 

안녕 믈라덴,

2개의 최저점 사이에 막대를 표시하려면 일요일 오후 23시에서 00시 사이의 막대를 어떻게 피할 수 있습니까?

왜냐하면 4h 차트에는 그 막대가 있고 1시간만 지속되기 때문입니다..... 그리고 일간 차트에도 나타납니다.

미리 감사합니다