Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Метод точно такой же - просто измените целевое окно в ChartIndicatorAdd() на 0
Привет mladen, спасибо за ответ... Я изучал здесь...
ChartIndicatorAdd(0,(int)ChartGetInteger(1,CHART_WINDOWS_TOTAL),MA1Handle);где (1) верхнее окно
где (0) внизу
ChartIndicatorAdd(0,(int)ChartGetInteger(0,CHART_WINDOWS_TOTAL),RSI1Handle);Теперь я пытаюсь добавить разные цвета в MA.
Привет mladen, спасибо за ответ... Я изучал здесь...
ChartIndicatorAdd(0,(int)ChartGetInteger(1,CHART_WINDOWS_TOTAL),MA1Handle);где (1) верхнее окно
где (0) внизу
ChartIndicatorAdd(0,(int)ChartGetInteger(0,CHART_WINDOWS_TOTAL),RSI1Handle);Теперь я пытаюсь добавить разные цвета в MA.
Вот так
Например
вопрос о размещении индикатора сверху или снизу, как я уже сказал, я обнаружил...
ChartIndicatorAdd(0,1,MA1Handle); (сверху)
ChartIndicatorAdd(0,2,RS1Handle); (внизу)
реальные проблемы:
1) теперь я пытаюсь применить другой цвет к MA's
2) и решить проблему, чтобы освободить MA's от графики (RSI's и WPR очищены правильно...).
например...
RSI1, RSI2, RSI3 и WPR очищаются правильно, но MA1, MA2, MA3 не очищаются...
int OnInit()
{
if (_Period==Signal_0_MA_Timeframe)
{
MA1Handle = iMA(_Symbol,Signal_0_MA_Timeframe,Signal_0_MA_PeriodMA,Signal_0_MA_Shift,Signal_0_MA_Method,Signal_0_MA_Applied);
if (MA1Handle!=INVALID_HANDLE)
ChartIndicatorAdd(0,(int)ChartGetInteger(1,CHART_WINDOWS_TOTAL),MA1Handle);
//return(INIT_SUCCEEDED);
}
//---adicionando MA2
if (_Period==Signal_1_MA_Timeframe)
{
MA2Handle = iMA(_Symbol,Signal_1_MA_Timeframe,Signal_1_MA_PeriodMA,Signal_1_MA_Shift,Signal_1_MA_Method,Signal_1_MA_Applied);
if (MA2Handle!=INVALID_HANDLE)
ChartIndicatorAdd(0,(int)ChartGetInteger(1,CHART_WINDOWS_TOTAL),MA2Handle);
//return(INIT_SUCCEEDED);
}
===============================//===========================
//+------------------------------------------------------------------+
//| Deinitialization function of the expert |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
{
//limpa do gráfico os indicadores RSI e WPR
for (int w = (int)ChartGetInteger(0,CHART_WINDOWS_TOTAL); w>=0; w--)
{
string name = ChartIndicatorName(0,w,0);
if (StringFind(name,"RSI(",0)==0)
ChartIndicatorDelete(0,w,name);
if (StringFind(name,"%R(",0)==0)
ChartIndicatorDelete(0,w,name);
if (StringFind(name,"Moving Average(",0)==0)
ChartIndicatorDelete(0,w,name);
}
ExtExpert.Deinit();
}
вопрос о размещении индикатора сверху или снизу, как я уже сказал, я обнаружил...
ChartIndicatorAdd(0,1,MA1Handle); (сверху)
ChartIndicatorAdd(0,2,RS1Handle); (внизу)
собственно проблемы:
1) сейчас я пытаюсь применить другой цвет к MA's
2) и решить проблему, чтобы освободить MA's от графиков (RSI's и WPR убираются правильно...).
например...
RSI1,RSI2,RSI3 и WPR очищаются правильно, но MA1,MA2,MA3 не очищаются...
int OnInit()
{
if (_Period==Signal_0_MA_Timeframe)
{
MA1Handle = iMA(_Symbol,Signal_0_MA_Timeframe,Signal_0_MA_PeriodMA,Signal_0_MA_Shift,Signal_0_MA_Method,Signal_0_MA_Applied);
if (MA1Handle!=INVALID_HANDLE)
ChartIndicatorAdd(0,(int)ChartGetInteger(1,CHART_WINDOWS_TOTAL),MA1Handle);
//return(INIT_SUCCEEDED);
}
//---adicionando MA2
if (_Period==Signal_1_MA_Timeframe)
{
MA2Handle = iMA(_Symbol,Signal_1_MA_Timeframe,Signal_1_MA_PeriodMA,Signal_1_MA_Shift,Signal_1_MA_Method,Signal_1_MA_Applied);
if (MA2Handle!=INVALID_HANDLE)
ChartIndicatorAdd(0,(int)ChartGetInteger(1,CHART_WINDOWS_TOTAL),MA2Handle);
//return(INIT_SUCCEEDED);
}
===============================//===========================
//+------------------------------------------------------------------+
//| Deinitialization function of the expert |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
{
//limpa do gráfico os indicadores RSI e WPR
for (int w = (int)ChartGetInteger(0,CHART_WINDOWS_TOTAL); w>=0; w--)
{
string name = ChartIndicatorName(0,w,0);
if (StringFind(name,"RSI(",0)==0)
ChartIndicatorDelete(0,w,name);
if (StringFind(name,"%R(",0)==0)
ChartIndicatorDelete(0,w,name);
if (StringFind(name,"Moving Average(",0)==0)
ChartIndicatorDelete(0,w,name);
}
ExtExpert.Deinit();
}
Mladen, 1) помогите пожалуйста сделать круглые цифры в iCustom не более 0.1 или 0.01.
и объясните, пожалуйста, как вставить "value2" (или 3) вместо среднего значения индикатора по умолчанию?
iCustom(symbolName,PeriodMinutes,"_1_IFT 2-1",0,i)
здравствуйте, господин Младен
Я запустил этот индикатор {ssa_squeeze_of_averages_mtf_amp_alerts_2.mq4}, но он ничего не показывает.
не могли бы вы исправить это
наилучшие пожелания
и не могли бы вы сделать MTF этого индикатора:ma_count_amp_alerts.mq4
MTF похожей гистограммы:
здравствуйте, господин Младен
Я запустил этот индикатор {ssa_squeeze_of_averages_mtf_amp_alerts_2.mq4}, но он ничего не показывает.
не могли бы вы исправить это
наилучшие пожелания
и не могли бы вы сделать MTF этого индикатора:ma_count_amp_alerts.mq4
MTF похожей гистограммы:
Mladen, 1) помогите пожалуйста сделать круглые цифры в iCustom не более 0.1 или 0.01.
и объясните, пожалуйста, как вставить "value2" (или3) вместо значения индикатора по умолчанию?
iCustom(symbolName,PeriodMinutes,"_1_IFT 2-1",0,i)
Зависит от списка параметров индикатора, но вы должны передать параметры между именем индикатора и номером буфера.
Что-то вроде этого:
Другая часть, которую я не понимаю
Если вы имеете в виду горячее ограничение возвращаемых значений, то вы не можете этого сделать. Вы можете ограничить только значение, присвоенное чему-то из вызова iCustom(), например, так
Вам нужно "SSA цены", чтобы ssa_squeeze . .. работал
спасибо.
теперь работает
мистер Младен
можно сделать из него MTF
похожая гистограмма
наилучшее мнение