Um backtesting adequado deve buscar simular situações práticas do mercado (slippage, custo de operação, etc...)
Boa Tarde, alguém pode ajudar?
A função: if (Date <> Date[1]) then
begin
end;
O Codigo funciona mas gera um warning em anexo.
O manual NTSL é muito vago. A Nelogica se recusa a ajudar e apenas diz para revisar o codigo.
Esse código é bem interessante, pois mostra o volume de negociações em tempo real em cada barra e talvez daria para codificar algum filtro na automação.
Abraços
Mkw
//Z_GPSTrader_SaldonaBarra Input Saldo1_Volume2_Quant3(1); Tamanho_Font(7); Var t,t_n,s_n,s,c,v,ac,av,Saldo : float; Begin if Saldo1_Volume2_Quant3 = 1 then begin t_n := Quantity; s_n := AccAgressSaldo(1) - AccAgressSaldo(1)[1]; //----------------------------------------------- // Saldo Nativo if (Date <> Date[1]) then s_n := AccAgressSaldo(1); //--------------------------- // Valores Calculados c := (t_n + s_n) / 2; v := t_n - c; t := c + v; s := c - v; //------------------- //Aggressão ac := c; //---------------------- // Agressao Compradora av := v; //----------------------- // Agressao Vendedora t := ac + av; if (t > 0) then begin {Cálculo} av := av * ( - 1); t := ac + av; end; //---------------------------- if (t > 1000) then Saldo := (t / 1000) else if (t < - 1000) then Saldo := ((abs(t) / 1000) * ( - 1)) else Saldo := t; if (t > 1000) then PlotText(Saldo + "K ",RGB(0,255,0),2,Tamanho_Font) else if (t > 0) then PlotText(Saldo,RGB(0,255,0),2,Tamanho_Font) else if (t < - 1000) then PlotText(Saldo + "K ",RGB(255,0,0),0,Tamanho_Font) else PlotText(Saldo,RGB(255,0,0),0,Tamanho_Font); end else if Saldo1_Volume2_Quant3 >= 2 then begin if Saldo1_Volume2_Quant3 = 2 then t := Volume else if Saldo1_Volume2_Quant3 = 3 then t := Quantity else t := 0; if (t > 1000000000) then Saldo := (t / 1000000000) else if (t > 1000000) then Saldo := (t / 1000000) else if (t > 1000) then Saldo := (t / 1000) else Saldo := t; if (t > 1000000000) then PlotText(Saldo + "B ",RGB(0,255,0),2,Tamanho_Font) else if (t > 1000000) then PlotText(Saldo + "M ",RGB(0,255,0),2,Tamanho_Font) else if (t > 1000) then PlotText(Saldo + "K ",RGB(0,255,0),2,Tamanho_Font) else PlotText(Saldo,RGB(255,0,0),0,Tamanho_Font); end; end;