T O P I C R E V I E W |
mrcstefy |
Posted - 24 October 2004 : 15:35:57 Function Main() Dim mc30 As Numeric Dim mc60 As Numeric mc60 = Moveav(Close, 60, "S", 0, - 30) mc30 = Moveav(Close, 30, "S", 0, - 15) Return mc30 - mc60
EndFunction Buon giorno vi chiedo cortesemente ancora aiuto. Prendiamo ad esempio mc60Dopo la "S", ho inserito 0, per indicare il movimento del vertical shift; non volendo appunto nessun movimento era necessario indicarlo? Inoltre come potete vedere, avendo arretrato la media mobile di - 30 logicamente gli ultimi giorni rimangono dei buchi potrei dire all'interprete di utilizzare per i giorni rimasti 30volte l'ultima chiusura) Grazie
|
1 L A T E S T R E P L I E S (Newest First) |
SupportoTecnico |
Posted - 25 October 2004 : 11:42:22 Era necessario indicare lo shift verticale solo se dopo si vuole indicare anche lo shift orizzontale (insomma come nel tuo caso).
Per il resto puoi scrivere una cosa del genere:
Function Main() Dim mc30 As Numeric Dim mc60 As Numeric
If (TotBar - CurrentBar >= 30) then mc60 = Moveav(Close, 60, "S", 0, - 30) mc30 = Moveav(Close, 30, "S", 0, - 15) Return mc30 - mc60 else Return Close(TotBar - CurrentBar) endif
EndFunction
|
|
|