Да, точно. Завтра обязательно исправим. Спасибо за пример кода.
critical error при попытке прицепить этот индикатор к любому чарту. Последняя строка в креше: 00435C80:0488 [00436108] ?FuncCopySeries@CExpertInterior
#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 Yellow
#property indicator_color2 DeepSkyBlue
extern int SSP=9;
//---- buffers
double MA[],Mov[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//|------------------------------------------------------------------|
int init()
{
IndicatorBuffers(2);
SetIndexBuffer(0,MA);
SetIndexBuffer(1,Mov);
return(0);
}
int deinit()
{
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
int counted_bars=IndicatorCounted();
if(counted_bars<0) return(-1);
ArrayCopySeries(MA, MODE_HIGH, "EURJPY", PERIOD_M15);
ArrayCopySeries(Mov,MODE_LOW, "USDCHF", PERIOD_M15);
return(0);
}
//+------------------------------------------------------------------+
critical error не возникает и всё работает, если объявление double MA[],Mov[] пернести в start()
avm, исправлено. будет в ближайшем билде
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
int start() { DrawsTRLine("line",Time[7],High[7], Time[2],High[2]); Sleep(3000); DrawsTRLine("line",Time[13],High[13],Time[7],High[7]); Sleep(3000); //тут наступает critical error //DrawsTRLine("line",0,0,0, High[2]); // а тут его нет DrawsTRLine("line",0,0,0, 0); return(0); } int DrawsTRLine(string Lname,datetime tim1,double prc1, datetime tim2,double prc2) { if( prc1==0||tim1==0||prc2==0||tim2==0 ) ObjectDelete(Lname); else {if(ObjectCreate(Lname,OBJ_TREND,0,tim1,prc1,tim2,prc2)==false) {ObjectSet(Lname,OBJPROP_TIME1, tim1); ObjectSet(Lname,OBJPROP_PRICE1, prc1); ObjectSet(Lname,OBJPROP_TIME2, tim2); ObjectSet(Lname,OBJPROP_PRICE2, prc2); } }; ObjectsRedraw(); return(0); }