Programmazione Prorealtime Prorealtime:formule, indicatori, oscillatori, tsi ... (12 lettori)

tetsuo

Guest
gransasso ti posto qui il codice per il TRADINGWEEK_M1 di visual trader

http://www.investireoggi.it/forum/chi-ha-voglia-di-migliorarlo-vt56487-4.html


Codice:
/////////////////////////////////////////////////////
//////////////TRADINGWEEK_M1////////////////////
/////////////////////////////////////////////////////
//variabili
//periodomedia1=6
//tipomedia1=ponderata
//periodomacd1=5
//periodomacd2=6
//periodomedia2=6
//tipomedia2=esponenziale

mymacd=exponentialaverage[periodomacd1](customclose)-exponentialaverage[periodomacd2](customclose)
media1=average[periodomedia1,tipomedia1](CustomClose)
opm=mymacd+media1
media2=average[periodomedia2,tipomedia2](opm)
tradingweekm1=media2+mymacd
return tradingweekm1 as "TRADINGWEEK_M1"

///////////////////FINE////////////////////////////////////////


FIAT.png



Non ho avuto modo di fare un confronto diretto con VT magari qualcuno che può controllare ci dice se è corretto :up:



Ciao
 

luigileo

Forumer storico
Utile è dire poco, per quanto ne ho capito hai trovato la soluzione al problema posto da Luigi, unico appunto dovremmo fare un vol/10000 per ricreare l'intento del codice originale ovvero:
valore della Vidya - valore della Vidya * 1/2 atr% (leggi mezzo atr percentuale)
(urca quasi non mi capisco da solo)!
Comunque viene fuori una bella linea di supporto sul grafico.


Grazie a Gransasso e meursault provo a vedere se funziona come trailing stop.

Ciao
 

Quarter Horse

Nuovo forumer
Ben ritrovati a tutti.
Se il grande Tets non stesse trascorrendo un meritato periodo di vacanza:car: e fosse davanti al PC, avrei bisogno del suo aiuto per questo codice da tradurre da Metatrader in PRT.
Si tratta del DSS di Bressert. I listati per PRT che fino ad oggi ho trovato su questo forum si avvicinano al vero DSS (che ho in Metastock) ma non sono proprio identici ad esso. Mentre quello che listo sotto in Metatrader è esattamente quello "giusto":up: e visto che io preferisco usare PRT mi farebbe piacere poterlo avere sulla mia piattaforma preferita.

Naturalmente sarò ben felice se altri, oltre a Tets potessero darmi una mano.
Ringrazio in anticipo e saluto.

#property copyright "Copyright © 2008, MetaQuotes Software Corp."
#property link "TeamWox Groupware / MetaQuotes Software Corp."
#property indicator_separate_window
#property indicator_minimum 0
#property indicator_maximum 100
#property indicator_buffers 2
#property indicator_color1 Red
#property indicator_color2 DarkBlue
#property indicator_level1 20
#property indicator_level2 80
//---- input parameters
extern int EMA_period=8;
extern int Stochastic_period=13;
//---- buffers
double DssBuffer[];
double MitBuffer[];
double smooth_coefficient;
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
//---- indicators
SetIndexStyle(0,DRAW_LINE);
SetIndexBuffer(0,DssBuffer);
SetIndexStyle(1,DRAW_LINE);
SetIndexBuffer(1,MitBuffer);

SetIndexEmptyValue(0, 0.0);
SetIndexLabel(0, "DSS");
SetIndexEmptyValue(1, 0.0);
SetIndexLabel(1, "MIT");
IndicatorShortName ("DSS("+EMA_period+","+Stochastic_period+")");
smooth_coefficient = 2.0 / (1.0 + EMA_period);
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----

//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
int i, limit, counted_bars=IndicatorCounted();
//----
if (counted_bars == 0) limit = Bars - Stochastic_period;
if (counted_bars > 0) limit = Bars - counted_bars;

double HighRange, LowRange;
double delta, MIT;
for (i = limit; i >= 0; i--)
{
HighRange = High[iHighest(NULL,0,MODE_HIGH,Stochastic_period,i)];
LowRange = Low[iLowest(NULL,0,MODE_LOW,Stochastic_period,i)];
delta = Close - LowRange;
MIT = delta/(HighRange - LowRange)*100.0;
MitBuffer = smooth_coefficient * (MIT - MitBuffer[i+1]) + MitBuffer[i+1];
}
double DSS;
for (i = limit; i >= 0; i--)
{
HighRange = MitBuffer[ArrayMaximum(MitBuffer, Stochastic_period, i)];
LowRange = MitBuffer[ArrayMinimum(MitBuffer, Stochastic_period, i)];
delta = MitBuffer - LowRange;
DSS = delta/(HighRange - LowRange)*100.0;
DssBuffer = smooth_coefficient * (DSS - DssBuffer[i+1]) + DssBuffer[i+1];
}

//----
return(0);
}
//+------------------------------------------------------------------+
 

Quarter Horse

Nuovo forumer
a proposito della mia precedente richiesta di codice:
COME NON DETTO !!!!!!!

:up::up: CI SONO RIUSCITO DA SOLO :D:D .. NON CON POCA FATICA ....

Però questo che scrivo adesso gradirei poterlo tradurre ma proprio non ne vengo a capo.
Gradito aiuto, anche con calma coi primi freschi di settembre :eek: :

Codici per Trade Station "da tradurre" per PRT


{Description of Inputs}{CXOver - This oscillator can be used with a crossover, although it is usually plotted without one.CXOver is the length of the of the moving agerage of the BLine to construct the crossover. The purpose of a crossover is to improve the accuracy of an oscillator that wiggles at tops and bottoms. In most markets the BLine does not often wiggle at tops and bottoms.} {SellLine and BuyLine are levels the osc must rise above for an osc downturn to paint a sell setup bar, or drop below for an osc upturn to paint a buy setup bar} Inputs: CXOver(0),SellLine(70),BuyLine(30),Alrt(0); Vars: Len1(3),Len2(3),Len3(3),OBOSMY(0),OBOSMYC(0),Sum(0),Cnt(0); {OBOS}Sum=0;For Cnt=0 to Len2-1 begin Sum=Sum+_OBOS(CXOver)[Cnt];End;If Len2>0 then OBOSMY=Sum/Len2Else OBOSMY=0;Sum=0;For Cnt=0 to CXOver-1 begin Sum=Sum+OBOSMY[Cnt];End;If CXOver>0 then OBOSMYC=Sum/CXOverElse OBOSMYC=0;If Alrt<>0 then begin If OBOSMY<BuyLine then Alert=True; If OBOSMY>SellLine then Alert=True;End; {Plots}If CXOver=0 then Plot1(Round(OBOSMY,1),"BLine");If CXOver<>0 then begin Plot1(Round(OBOSMY,1),"BLine"); Plot2(Round(OBOSMYC,1),"BLine_CO");End;Plot3(SellLine,”BLine_SL”);Plot4(BuyLine,”BLine_BL”);


{_OBOS:OBOB} Inputs: CXOver(NumericSimple); Vars: Len1(3),Len2(3),Len3(3),OBOS(0),PPr(0),Op(0),HstH(0),LstL(0),Cntr(0), DAmt(0),UAmt(0),USm(0),DSm(0),UAvg(0),DAvg(0),MRng(0); {OB/OS}Op=O[Len3];HstH=_Hst(H,Len3);LstL=_Lst(L,Len3);PPr=(Op+HstH+LstL+C)/4;If CurrentBar=1 then begin MRng=Len1; USm=0; DSm=0; For Cntr=0 to MRng-1 begin UAmt=PPr[Cntr]-PPr[Cntr+1]; If (UAmt>=0) then DAmt=0 Else begin DAmt=-UAmt; UAmt=0; End; USm=USm+UAmt; DSm=DSm+DAmt; End; UAvg=USm/MRng; DAvg=DSm/MRng;EndElse If CurrentBar>1 then begin UAmt=PPr[0]-PPr[1]; IF UAmt>=0 then DAmt=0 Else begin DAmt=-UAmt; UAmt=0; End; UAvg=(UAvg[1]*(MRng-1)+UAmt)/MRng; DAvg=(DAvg[1]*(MRng-1)+DAmt)/MRng; End; IF UAvg+DAvg<>0 then OBOS=100*UAvg/(UAvg+DAvg) Else OBOS=0;_OBOS=OBOS;
 

tetsuo

Guest
a proposito della mia precedente richiesta di codice:
COME NON DETTO !!!!!!!

:up::up: CI SONO RIUSCITO DA SOLO :D:D .. NON CON POCA FATICA ....


:clap:


ottimo ... e se ci è voluta un po' di fatica vuol dire che anche la soddisfazione sarà stata maggiore :up:

Però questo che scrivo adesso gradirei poterlo tradurre ma proprio non ne vengo a capo.
Gradito aiuto, anche con calma coi primi freschi di settembre :eek: :

Codici per Trade Station "da tradurre" per PRT



Così come lo hai postato è un po' illeggibile :rolleyes: vedi se riesci a postarlo con la corretta tabulazione .... così magari non aspettiamo il fresco di settembre :D


P.S. zeru vacanze per il momento :wall:
 

tetsuo

Guest
qualcuno conosce come vengono usati i grafici kagi, perchè non trovo nulla in giro

grazie mille



Ciao al-fx secondo me ( ma magari già lo hai fatto ) dovresti girare la domanda sullo stile grafico kagi in sezione Informazioni e Didattica o in Piazza Affari magari lì qualcuno ti saprà fornire un po' di materiale da studio.Che io sappia in italiano c'e' un libro di S. Calamita su tale tecniche ( non l'ho letto e so che esiste solo per le simpatiche scaramuccie che si aprono in altri lidi ogni volta che lo si nomina :D).

Ciao e buon WE
 

Users who are viewing this thread

Alto