indicator work only when change time frame

 
I have some few custom indicators that are not activated when you start MT4 but they need me to change the time frame to see them turn. it is possible to correct?
 
In init(), try to avoid reading any data that needs connection to a MT4 server. The connection might not be yet be established, and mostly it is not.
 

I not use any antivirus or firewall.

I'm every online.

 

Fine.

Could you publish your init() methods here?

 
Diamne:  it is possible to correct?
Code it properly.
int counted_bars    = IndicatorCounted();   if (counted_bars < 0)   return;
if(counted_bars == 0){ // one time initialization }
if(counted_bars < LOOK_BACK) counted_bars = LOOK_BACK; // SMA(x): lookback=x
for(int iBar = Bars - 1 - counted_bars; iBar >= 0; iBar--){
   :
 
 

Your initSymbols() function must be called after the MT4 server gets connected. It is not connected when your MT4 starts and init() is triggered. No symbol list is created, and no MarketInfo() gives you value. Call it rather within start(), and check if it succeeds.

 
Diamne: code here

Attach file form is at bottom of edit form.

I see nothing obvious. Try taking initSymbols(); out of init and call it in start when IndicatorCounted == 0;

 
When i move initSymbols() to start MT4 Freeze
 
 
So reduce your bars on chart to something reasonable.
 
i have only 500 bar now.
Reason: