FXNook Vendor Docs

Old-Style EAs and Manual Mode

Licensing EAs written with init() and start(), and adding the calls by hand when needed.

Updated September 19, 2026 1 min read

Old-style MT4 EAs

Older MT4 EAs use init() and start() instead of OnInit() and OnTick(). Tick Old-style code on the download page. It is still one include line – the file renames init and start the same way the normal file renames OnInit and OnTick.

Old-style mode renames the words init and start everywhere in your code. If you have a variable called start or init, the compile stops with “identifier already used”. Rename that variable, or use Manual mode.

Old-style code only exists in MT4, so the option is only offered for MT4 products.

Manual mode

For code the automatic method cannot compile. Nothing is renamed, and the include line alone does nothing – you add two calls yourself.

First thing inside OnInit(), or init() in an old EA:

FXNookStart();
if(!fxnook_ok) return(INIT_SUCCEEDED);   // stays on chart, badge says why

First thing inside OnTick(), or start() in an old EA:

if(!FXNookHeartbeat()) return;           // use return(0); if start() returns int
  • If your OnInit()/init() returns void, write return; instead.
  • If you also have an OnTimer(), start it with the same heartbeat line.
  • Anything that trades must be behind that check.

Test it

Attach the EA with an empty key. You must see the red FXNook badge. A smiley and no badge means a call is missing and your EA is unprotected.

    Was this guide helpful?
    Need help? Most questions are answered by the guides above. If yours is not, our team will help.
    Open Support Ticket