정사각형 또는 직사각형 그리기. 정말 도움이 필요해요... - 페이지 2 12345678 새 코멘트 Alex_Profit 2016.09.30 11:13 #11 안녕하세요. 정말 도움이 필요하고 어떻게 해야할지 모르겠습니다. 어려운 도움이 아니라면. 매월 첫 번째 막대를 표시할 지표가 필요합니다. 월 수를 선택하여 월말까지 높은 가격과 낮은 가격에 대한 선을 그립니다. 예.(3개월. 라인마킹은 3개월). 또는 볼 샘플. 미리 감사드립니다. Alexey Viktorov 2016.09.30 11:23 #12 다음은 열린 + 및 - 20 포인트에서 날짜를 표시하는 샘플 스크립트입니다. 마찬가지로 월을 정의하고 이에 따라 이번 달의 고가와 저가를 정의할 수 있습니다. /********************************************************************\ 20-20.mq4 | Viktorov | v4forex@yandex.ru | \********************************************************************/ #property copyright "Viktorov" #property link "v4forex@yandex.ru" #property version "1.00" MqlDateTime mqlDateTime; MqlRates mqlRates[ 1 ]; /********************Script program start function*******************/ void OnStart () { double point = _Digits % 2 == 0 ? _Point : _Point * 10 ; datetime dt = ChartTimeOnDropped (); TimeToStruct ( ChartTimeOnDropped (), mqlDateTime); if ( CopyRates ( _Symbol , PERIOD_D1 , dt, 1 , mqlRates) < 0 ) Print ( "" ); string objName = TimeToString (mqlRates[ 0 ].time, TIME_DATE ); ObjectCreate ( 0 , objName, OBJ_TREND , 0 , mqlRates[ 0 ].time, mqlRates[ 0 ].open, mqlRates[ 0 ].time+ PeriodSeconds ( PERIOD_D1 ), mqlRates[ 0 ].open); ObjectSetInteger ( 0 , objName, OBJPROP_RAY_RIGHT , false ); ObjectCreate ( 0 , objName+ "+20" , OBJ_TREND , 0 , mqlRates[ 0 ].time, mqlRates[ 0 ].open+ 20 *point, mqlRates[ 0 ].time+ PeriodSeconds ( PERIOD_D1 ), mqlRates[ 0 ].open+ 20 *point); ObjectSetInteger ( 0 , objName+ "+20" , OBJPROP_RAY_RIGHT , false ); ObjectCreate ( 0 , objName+ "-20" , OBJ_TREND , 0 , mqlRates[ 0 ].time, mqlRates[ 0 ].open- 20 *point, mqlRates[ 0 ].time+ PeriodSeconds ( PERIOD_D1 ), mqlRates[ 0 ].open- 20 *point); ObjectSetInteger ( 0 , objName+ "-20" , OBJPROP_RAY_RIGHT , false ); Comment (mqlRates[ 0 ].open, "\n" , objName, "\n" , sizeof (mqlDateTime), "\n" ); } /*******************************************************************/ Alex_Profit 2016.09.30 14:48 #13 AlexeyVik : 다음은 열린 + 및 - 20 포인트에서 날짜를 표시하는 샘플 스크립트입니다. 마찬가지로 월을 정의하고 이에 따라 이번 달의 고가와 저가를 정의할 수 있습니다. 정말 감사합니다. 힘들지만 효과가 있는 것 같습니다. Alex_Profit 2016.09.30 16:02 #14 AlexeyVik: 귀하의 응답에 감사드립니다. 제가 철자를 제대로 썼는지 모르겠습니다. 이것에 대해 필요합니다. 지표에서 이것을 구현하는 방법을 돕거나 제안해 주시면 대단히 감사하겠습니다. 저는 프로그래밍이 처음입니다. 수직선이 올바르게 그려집니다. 나는 "수평선과 원을 높고 낮은 첫 번째 촛불에 묶는 방법"을 이해하지 못합니다. 도움을 주시면 감사하겠습니다. Alexey Viktorov 2016.09.30 17:47 #15 CopyRates() 함수와 MqlRates 구조에 대한 문서를 더 자세히 읽어보십시오. 그들의 도움으로 위시리스트를 구현하는 데 필요한 모든 데이터를 얻을 수 있습니다. 그런 다음 효과가 있었던 것과 효과가 없는 것을 보여줍니다. 그렇지 않으면, 도움 요청은 귀하를 위한 요청으로 읽습니다. 직설적이라 죄송합니다. Alex_Profit 2016.10.04 16:25 #16 다음은 소스 코드입니다. 개선하는 데 도움을 주시면 감사하겠습니다. 매월 첫째 주의 최고가와 최저가를 찾아야 합니다. //+------------------------------------------------------------------+#property copyright ""#property link ""#property indicator_chart_window //--- Внешние Глобальные переменные extern int TF = 43200; //--- Через сколько баров рисуются линии (На каком Т/Ф)extern int barsToProcess = 5; //--- Кол-во отображаемых периодов (линий) extern string TimeFrames = "M1,5,15,30; 60H1; 240H4; 1440D1; 10080W1; 43200MN."; //--- Подсказка кол-во боров в Т/Ф //--- Глобальные переменные string Name_Line; //--- Имя Вертикальных уровней//double Price_H = High[0]; //--- Макс цены //double Price_L = Low[0]; //--- Мин цены//+------------------------------------------------------------------+int init() { //--- return(0); }//+------------------------------------------------------------------+int deinit() { int i; for (i=0; i<Bars; i++) //--- Выбираем все установленные объекты { ObjectDelete(Name_Line + DoubleToStr(i,0)); //--- Удаляем все установленные линии } return(0); }//+------------------------------------------------------------------+int start(){ int counted_bars = IndicatorCounted(); //--- перем counted_bars = функц. Возвращает количество баровint limit; //--- переменная старт кол-во баров. Линии рисуем о по всем барамint i=0; //--- переменная i = 0 обнуление if(counted_bars > 0) counted_bars --; //--- последний посчитанный бар будет пересчитан //--- основной цикл limit = Bars - counted_bars; for(i = 0; i < limit; i ++) { //+----- Выбираем количество линий отображаемых на экране if(limit > barsToProcess) //--- Если кол-во линий > Кол-ву отображаемых периодов (линий) { limit = barsToProcess; //--- Тогда устанавливаем Кол-во отображаемых периодов (линий) Name_Line = "Time_VLine M" + TF + " "+DoubleToStr(i,0); //--- И присваиваем имя с соответствующими параметрами //+------------------------ Рисуем линии -----------------------------------------------------+ while (i<limit) //--- Пока есть линии в окне терминала. Или пока висит индикатор в окне терминала. { datetime t_Line = iTime(Symbol(),TF,i); //--- В ПЕРЕМ t_Line Будет Присваиваться значение времени открытия бара { ObjectCreate (Name_Line + DoubleToStr(i,0),OBJ_VLINE,0,t_Line,0); //--- Создаём обьект вертикальную линию ObjectSet (Name_Line + DoubleToStr(i,0),OBJPROP_STYLE,2); //--- Со стилем ObjectSet (Name_Line + DoubleToStr(i,0),OBJPROP_COLOR,DimGray); //--- Со цветом ObjectSet (Name_Line + DoubleToStr(i,0),OBJPROP_WIDTH,0); //--- С толщиной ObjectSet (Name_Line + DoubleToStr(i,0),OBJPROP_BACK,0); //--- С типом отображения. Объект на заднем плане //+-----------------------------------------------------------------------------+ } i++; } } } return(0);} MQL4에서 MQL5로 이전하기 MQL5 Coobook: MQL5에서 다중 MQL5으로 거래용 능동 제어판 Alexey Viktorov 2016.10.05 04:57 #17 if ( CopyRates ( _Symbol , PERIOD_W1 , dt, 1 , mqlRates) < 0 ) //--- Если бросили скрипт на выбранную свечку Print ( "" ); 내 코드에서 이것은 촛불이 아니라 하루입니다. 당신의 경우에는 일주일입니다. 이것으로부터 우리는 선을 그릴 시간을 얻습니다 . 아마도 한 달이 필요할 것입니다. 월의 시작 시간입니다. 그러나 그것은 한 주의 시작과 거의 일치하지 않습니다. 따라서 여기에서 첫 번째 주를 계산하는 방법을 생각해낼 필요가 있습니다. ObjectCreate ( 0 , objName, OBJ_TREND , 0 , mqlRates[ 0 ].time + PERIOD_MN1 , mqlRates[ 0 ].high, mqlRates[ 0 ].time + PeriodSeconds ( PERIOD_MN1 ) , mqlRates[ 0 ].high); 차이를 느껴보세요. 아직 mql4에는 큰 차이가 없지만 어떤 변경 사항이 우리를 기다리고 있을지 누가 알겠습니까... //--- Что здесь не так, при построении линии по лоу. На графике её нет. И Ошибки компиляции тоже нет? //--- НО по отдельности всё работает. 트렌드 이름에 주의하십시오. //----- Для чего нужен этот блок если линия отрисовывается на графике и без него 나는 3개의 라인을 가지고 있으므로 3개의 함수와 3개의 라인 이름이 있습니다. Drawing a square or Indicators: Ind_VilkaFractals_v1.1.mq4 고조파 거래 Alex_Profit 2016.10.07 05:02 #18 도와주셔서 감사합니다. 하지만 어떻게든 이해할 수 없습니다. Alexey Viktorov 2016.10.07 05:09 #19 그렇다면 대답은 단 하나의 질문이다. //--- Что здесь не так, при построении линии по лоу. На графике её нет. И Ошибки компиляции тоже нет? //--- НО по отдельности всё работает. 여기에는 같은 줄 이름이 있지만 서로 달라야 합니다. 게시물을 삭제하고 수정한 이유는 무엇입니까? Alex_Profit 2016.10.07 07:30 #20 당신은 오랫동안 대답하지 않았으며 어리석은 질문에 대답하지 않았다고 생각하여 삭제했습니다. 12345678 새 코멘트 트레이딩 기회를 놓치고 있어요: 무료 트레이딩 앱 복사용 8,000 이상의 시그널 금융 시장 개척을 위한 경제 뉴스 등록 로그인 공백없는 라틴 문자 비밀번호가 이 이메일로 전송될 것입니다 오류 발생됨 Google으로 로그인 웹사이트 정책 및 이용약관에 동의합니다. 계정이 없으시면, 가입하십시오 MQL5.com 웹사이트에 로그인을 하기 위해 쿠키를 허용하십시오. 브라우저에서 필요한 설정을 활성화하시지 않으면, 로그인할 수 없습니다. 사용자명/비밀번호를 잊으셨습니까? Google으로 로그인
안녕하세요. 정말 도움이 필요하고 어떻게 해야할지 모르겠습니다. 어려운 도움이 아니라면.
매월 첫 번째 막대를 표시할 지표가 필요합니다. 월 수를 선택하여 월말까지 높은 가격과 낮은 가격에 대한 선을 그립니다.
예.(3개월. 라인마킹은 3개월). 또는 볼 샘플.
미리 감사드립니다.
다음은 열린 + 및 - 20 포인트에서 날짜를 표시하는 샘플 스크립트입니다. 마찬가지로 월을 정의하고 이에 따라 이번 달의 고가와 저가를 정의할 수 있습니다.
다음은 열린 + 및 - 20 포인트에서 날짜를 표시하는 샘플 스크립트입니다. 마찬가지로 월을 정의하고 이에 따라 이번 달의 고가와 저가를 정의할 수 있습니다.
AlexeyVik: 귀하의 응답에 감사드립니다.
제가 철자를 제대로 썼는지 모르겠습니다. 이것에 대해 필요합니다.
지표에서 이것을 구현하는 방법을 돕거나 제안해 주시면 대단히 감사하겠습니다.
저는 프로그래밍이 처음입니다.
수직선이 올바르게 그려집니다.
나는 "수평선과 원을 높고 낮은 첫 번째 촛불에 묶는 방법"을 이해하지 못합니다.
도움을 주시면 감사하겠습니다.
CopyRates() 함수와 MqlRates 구조에 대한 문서를 더 자세히 읽어보십시오. 그들의 도움으로 위시리스트를 구현하는 데 필요한 모든 데이터를 얻을 수 있습니다.
그런 다음 효과가 있었던 것과 효과가 없는 것을 보여줍니다. 그렇지 않으면, 도움 요청은 귀하를 위한 요청으로 읽습니다. 직설적이라 죄송합니다.
다음은 소스 코드입니다. 개선하는 데 도움을 주시면 감사하겠습니다. 매월 첫째 주의 최고가와 최저가를 찾아야 합니다.
//+------------------------------------------------------------------+
#property copyright ""
#property link ""
#property indicator_chart_window
//--- Внешние Глобальные переменные
extern int TF = 43200; //--- Через сколько баров рисуются линии (На каком Т/Ф)
extern int barsToProcess = 5; //--- Кол-во отображаемых периодов (линий)
extern string TimeFrames = "M1,5,15,30; 60H1; 240H4; 1440D1; 10080W1; 43200MN."; //--- Подсказка кол-во боров в Т/Ф
//--- Глобальные переменные
string Name_Line; //--- Имя Вертикальных уровней
//double Price_H = High[0]; //--- Макс цены
//double Price_L = Low[0]; //--- Мин цены
//+------------------------------------------------------------------+
int init()
{
//---
return(0);
}
//+------------------------------------------------------------------+
int deinit()
{
int i;
for (i=0; i<Bars; i++) //--- Выбираем все установленные объекты
{
ObjectDelete(Name_Line + DoubleToStr(i,0)); //--- Удаляем все установленные линии
}
return(0);
}
//+------------------------------------------------------------------+
int start()
{
int counted_bars = IndicatorCounted(); //--- перем counted_bars = функц. Возвращает количество баров
int limit; //--- переменная старт кол-во баров. Линии рисуем о по всем барам
int i=0; //--- переменная i = 0 обнуление
if(counted_bars > 0) counted_bars --; //--- последний посчитанный бар будет пересчитан
//--- основной цикл
limit = Bars - counted_bars;
for(i = 0; i < limit; i ++)
{
//+----- Выбираем количество линий отображаемых на экране
if(limit > barsToProcess) //--- Если кол-во линий > Кол-ву отображаемых периодов (линий)
{
limit = barsToProcess; //--- Тогда устанавливаем Кол-во отображаемых периодов (линий)
Name_Line = "Time_VLine M" + TF + " "+DoubleToStr(i,0); //--- И присваиваем имя с соответствующими параметрами
//+------------------------ Рисуем линии -----------------------------------------------------+
while (i<limit) //--- Пока есть линии в окне терминала. Или пока висит индикатор в окне терминала.
{
datetime t_Line = iTime(Symbol(),TF,i); //--- В ПЕРЕМ t_Line Будет Присваиваться значение времени открытия бара
{
ObjectCreate (Name_Line + DoubleToStr(i,0),OBJ_VLINE,0,t_Line,0); //--- Создаём обьект вертикальную линию
ObjectSet (Name_Line + DoubleToStr(i,0),OBJPROP_STYLE,2); //--- Со стилем
ObjectSet (Name_Line + DoubleToStr(i,0),OBJPROP_COLOR,DimGray); //--- Со цветом
ObjectSet (Name_Line + DoubleToStr(i,0),OBJPROP_WIDTH,0); //--- С толщиной
ObjectSet (Name_Line + DoubleToStr(i,0),OBJPROP_BACK,0); //--- С типом отображения. Объект на заднем плане
//+-----------------------------------------------------------------------------+
}
i++;
}
}
}
return(0);
}
내 코드에서 이것은 촛불이 아니라 하루입니다. 당신의 경우에는 일주일입니다.
이것으로부터 우리는 선을 그릴 시간을 얻습니다 . 아마도 한 달이 필요할 것입니다. 월의 시작 시간입니다. 그러나 그것은 한 주의 시작과 거의 일치하지 않습니다. 따라서 여기에서 첫 번째 주를 계산하는 방법을 생각해낼 필요가 있습니다.
차이를 느껴보세요. 아직 mql4에는 큰 차이가 없지만 어떤 변경 사항이 우리를 기다리고 있을지 누가 알겠습니까...
//--- Что здесь не так, при построении линии по лоу. На графике её нет. И Ошибки компиляции тоже нет?
//--- НО по отдельности всё работает.
트렌드 이름에 주의하십시오.
//----- Для чего нужен этот блок если линия отрисовывается на графике и без него
나는 3개의 라인을 가지고 있으므로 3개의 함수와 3개의 라인 이름이 있습니다.
그렇다면 대답은 단 하나의 질문이다.
//--- Что здесь не так, при построении линии по лоу. На графике её нет. И Ошибки компиляции тоже нет?
//--- НО по отдельности всё работает.여기에는 같은 줄 이름이 있지만 서로 달라야 합니다.
게시물을 삭제하고 수정한 이유는 무엇입니까?
당신은 오랫동안 대답하지 않았으며 어리석은 질문에 대답하지 않았다고 생각하여 삭제했습니다.