0% found this document useful (0 votes)
33 views

Mql4 Course: by Coders' G U Ru

This document provides an introduction to variables in MQL4, including what variables are, how they are declared and initialized, and the different scopes (local and global) and data types of variables. Variables refer to sections of memory where data can be stored. They must be declared with a name and data type, and can then be initialized by assigning a value. Variables can be local to functions/blocks of code or global and accessible anywhere. The extern keyword is used to declare variables that can be set from a program's properties.

Uploaded by

Joe Syah
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
33 views

Mql4 Course: by Coders' G U Ru

This document provides an introduction to variables in MQL4, including what variables are, how they are declared and initialized, and the different scopes (local and global) and data types of variables. Variables refer to sections of memory where data can be stored. They must be declared with a name and data type, and can then be initialized by assigning a value. Variables can be local to functions/blocks of code or global and accessible anywhere. The extern keyword is used to declare variables that can be set from a program's properties.

Uploaded by

Joe Syah
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

MQL4 COURSE

By Coders g u ru
w w w . f orex -t sd. c om

-8Variables
--------------------

Welcome to my

M Q L 4 v a ri a b les .

I h op e y ou en j oy ed th e p rev i ou s les s on s a n d I h op e y ou a re rea d y f or th e v a ri a b les


ch a llen g e:
I recommen d y ou to rea d th e D A T A T YP E S les s on b ef ore rea d i n g th i s les s on .
You ca n d ow n loa d i t h ere:
h ttp :/ / f orex -ts d .com/ a tta ch men t.p h p ? a tta ch men ti d = 4 6 9
N ow , let s enjoy th e V a ri a b les .
W h at ar e t h e v ar i abl es m ean?
A s I told y ou th e s ecret b ef ore, th e v a ri a b les a re th e n a mes th a t ref er to s ecti on s of
memory i n to w h i ch d a ta ca n b e s tored .
T o h elp y ou th i n k of th i s a s a p i ctu re, i ma g i n e th a t memory i s a s eri es of d i f f eren t s i z e
b ox es . T h e b ox s i z e i s memory s tora g e a rea req u i red i n b y tes .

In ord er to u s e a b ox to s tore d a ta , th e b ox mu s t b e g i v en a n a me; th i s p roces s i s


k n ow n a s decl ar at i on.
In th e d ecla ra ti on p roces s y ou u s e a w ord tell th e comp u ter w h a t s th e k i n d a n d
s i z e of th e b ox y ou w a n t to u s e, th i s w ord k n ow n a s k eyw or d.
It h elp s i f y ou g i v e a b ox a mea n i n g f u l n a me th a t rela tes to th e ty p e of
i n f orma ti on w h i ch ma k e i t ea s i er to f i n d th e d a ta , th i s n a me i s th e v ar i abl e
cons t ant .
D a ta i s p la ced i n to a b ox b y as s i g ni ng th e d a ta to th e b ox .
W h en w e s et th e v a lu e of th e b ox y ou h a v e crea ted i n th e s a me li n e y ou d ecla red
th e v a ri a b le; th i s p roces s i s k n ow n a s i ni t i al i z at i on.

W h en w e crea te a v a ri a b le w e a re telli n g th e comp u ter th a t w e w a n t h i m to a s s i g n a


s p eci f i ed memory len g th ( i n b y tes ) to ou r v a ri a b le, s i n ce s tori n g a s i mp le n u mb er, a letter
or a la rg e n u mb er i s n ot g oi n g to occu p y th e s a me s p a ce i n memory , s o th e comp u ter w i ll

a s k u s w h a t s th e k i n d of d a ta a n d h ow mu ch th e len g th of th e d a ta ? T h a t i s th e D a ta ty p e
f or.
F or ex a mp le i f w e s a i d th i s li n e of cod e to th e comp u ter:
i n t M y V a ra i b le= 0 ;
T h a t s mea n w e a re a s k i n g th e comp u ter to s et a b lock of 4 b y tes len g th to ou r v a ri a b le
n a med M y V a ra i a b le .
In th e p rev i ou s ex a mp le w e h a v e u s ed :
i nt  Key w ord
i nt  In teg er d a ta ty p e.
i nt  D ecla ra ti on
M yV ar ai bl e  V a ri a b le s con s ta n t.
= 0  In i ti a li z a ti on
W e w i ll k n ow more a b ou t v a ri a b les i n a comi n g les s on .
In M Q L 4 , th es e a re th e k i n d s of D a ta ty p es :

In teg er ( i n t)
B oolea n ( b ool)
C h a ra cter ( ch a r)
S tri n g ( s tri n g )
F loa ti n g -p oi n t n u mb er ( d ou b le)
C olor ( color)
D a teti me ( d a teti me)

I v e cop i ed th e p rev i ou s f ew li n es f rom th e D A T A T YP E S les s on f or y ou . T o k n ow


w h a t s th e v a ri a b le, n ow h ow d o to d ecla re th e v a ri a b les :

D ec larat io n :
D ecla ri n g a v a ri a b le mea n s to i n trod u ce i t to th e w orld a n d s p eci f y i ts ty p e. B y u s i n g th e
k eyw or ds y ou h a v e lea rn ed i n th e D A T A T YP E S les s on ( i n t, d ou b le, ch a r, b ool, s tri n g ,
color a n d d a teti me) w i th th e n a me y ou ch os e to th e v a ri a b le.
F or ex a mp le:
i n t M y V a ra i b le;

H ere y ou d ecla red


th e d ecla ra ti on y ou
d ecla ra ti on th e M Q
th i s :' M yV ar ai bl e'

a v
ca
L 4
-v

a ri a b le n a med M yV ar ai bl e w h i ch i s a n i n teg er ty p e. A n d b ef ore


n t u s e th e M yV ar i abl e i n y ou r cod e. If y ou u s ed i t w i th ou t
comp i ler w i ll comp la i n a n d w i ll tell y ou s ometh i n g li k e
ar i abl e not def i ned. 1 er r or ( s ) , 0 w ar ni ng ( s ) .

I n it ializ at io n :
In i ti a li z i n g th e v a ri a b le mea n s to a s s i g n a v a lu e to i t, f or ex a mp le M yV ar ai bl e= 0 ;
You ca n i n i ti a li z e th e v a ri a b le a t th e s a me li n e of th e d ecla ra ti on li k e th e ex a mp le:
i nt M yV ar ai bl e= 0 ;
A n d y ou ca n d ecla re th e v a ri a b le i n on e p la ce a n d i n i ti a li z e i t i n a n oth er p la ce li k e th i s :
i n t M y V a ra i b le;

M y V a ra i b le= 5 ;
B u t k eep i n y ou r mi n d th i s f a ct: t h e decl ar at i on m u s t be bef or e t h e i ni t i al i z at i on.

S c o p es o f v ariables:
T h ere a re tw o s cop es of th e v a ri a b les , L oca l a n d G lob a l.
S cop e mea n s , w h i ch p a rt of cod e w i ll k n ow a b ou t th e v a ri a b le a n d ca n u s e i t.
L ocal v ar i abl e mea n s th ey a re n ot s een to ou ts i d e w orld w h ere th ey h a d d ecla red . F or
ex a mp le th e v a ri a b les d ecla red i n s i d e f u n cti on a re loca l to th e f u n cti on b lock of cod e, a n d
th e v a ri a b les d ecla red i n s i d e th e loop or d eci s i on s b lock of cod e a re loca l to th os e b lock s
a n d ca n b e s een or u s ed ou ts i d e th em.
F or ex a mp le:
d ou b le my _ f u n c ( d ou b le a , d ou b le b , d ou b le c)
{
in td ;
retu rn ( a * b + c) ;
}
In th e a b ov e ex a mp le th e v a ri a b les a,b,c a n d d a re loca l v a ri a b les , w h i ch ca n b e u s ed
on ly i n s i d e th e f u n cti on b lock of cod e ( a n y th i n g b es i d e th e b ra ces ) a n d ca n t b e u s ed b y
ou ts i d e cod e. S o w e ca n t w ri te a li n e a f ter th e f u n cti on a b ov e s a y i n g f or ex a mp le: d= 1 0 ;
b eca u s e d i s n ot s een to th e n ex t li n e of th e f u n cti on b eca u s e i t s ou ts i d e i t.

T h e s econ d k i n d of th e s cop es i s th e G l obal v ar i abl es , a n d th ey a re th e v a ri a b les w h i ch


h a d d ecla red ou ts i d e a n y b lock of cod e a n d ca n b e s een f rom a n y p a rt of y ou r cod e.
F or ex a mp le:
i n t G lob a l_ V a ri a b le;
d ou b le my _ f u n c ( d ou b le a , d ou b le b , d ou b le c)
{
retu rn ( a * b + c + G lob a l_ V a ri a b le) ;
}
H ere th e v a ri a b le G l obal _ V ar i abl e d ecla red ou ts i d e th e f u n cti on ( f u n cti on lev el
d ecla ra ti on ) s o, i t ca n b e s een b y a ll th e f u n cti on s i n y ou p rog ra m.
T h e G lob a l v a ri a b les w i ll a u toma ti ca lly s et to z er o i f y ou d i d n t i n i ti a li z e th em.

E x t ern v ariables:
T h e k ey w ord ex t er n u s ed to d ecla re a s p eci a l k i n d of v a ri a b les ; th os e k i n d s of
v a ri a b les a re u s ed to d ef i n e i n p u t d a te of th e p rog ra m, w h i ch y ou ca n s et th em f orm th e
p rop erty of y ou r E x p ert a d v i s or or C u s tom i n d i ca tor.
F or ex a mp le:
ex tern color In d i ca tor_ color = C ' 0 x 0 0 ,0 x 0 0 ,0 x F F ' ; / / b lu e
i n t i n i t( )
{
...
}
H ere th e v a ri a b le I ndi cat or _ col or h a d d ef i n ed a s a n ex t er n v a ri a b le w h i ch y ou w i ll s ee
i t th e f i rs t ti me y ou a tta ch y ou r i n d i ca tor ( or E A ) to th e M eta T ra d er ch a rt a n d w h i ch y ou
ca n ch a n g e i t f rom th e p rop erti es s h eet w i n d ow s . L ook a t F i g u re 1 .

F i g u r e 1 : P r op er t y s h eet of M A i ndi cat or


H ere th e v a ri a b les P er i od, S h i f t , M A _ m et h od, A p p l y_ t o a n d S t yl e a re v a ri a b les
d ef i n ed u s i n g th e ex t er n k ey w ord s o th ey a p p ea r i n th e p rop erty s h eet.
A n y v a ri a b le y ou w a n t th e u s er of y ou r p rog ra m b e a b le to ch a n g e a n d s et, ma k e i t
ex tern v a ri a b le.
I h op e y ou en j oy ed th e les s on .
I w el com e v er y m u ch t h e q u es t i ons and t h e s u g g es t i ons .
S ee y ou
C oder s G u r u
2 9 -1 0 -2 0 0 5

You might also like