Dividir o maior MAE pelo saldo da conta corrente
0 respostas
Michael
3 anos atrás #268911
Olá a todos,
Quero mostrar o maior MAE no %. Para isso, o maior MAE deve ser dividido pelo saldo da conta corrente e multiplicado por 100. O código para o maior MAE é o seguinte:
pacote SQ.Columns.Databanks;
import com.strategyquant.lib.L;
import com.strategyquant.lib.SettingsMap;
import com.strategyquant.tradinglib.DatabankColumn;
import com.strategyquant.tradinglib.Order;
import com.strategyquant.tradinglib.OrdersList;
import com.strategyquant.tradinglib.SQStats;
import com.strategyquant.tradinglib.StatsTypeCombination;
import com.strategyquant.tradinglib.ValueTypes;public class BiggestMAE extends DatabankColumn {
public BiggestMAE() {
super(L.t("Biggest MAE"), DatabankColumn.Decimal2PL, ValueTypes.Minimize, 0, 0, 100);setWidth(70);
setTooltip(L.t("Biggest MAE - é o pior Maximum Adverse Excursion de todas as negociações"));
}//————————————————————————
@Override
public double compute(SQStats stats, StatsTypeCombination combination, OrdersList ordersList, SettingsMap settings, SQStats statsLong, SQStats statsShort) throws Exception {
double worstMAE = -Double.MAX_VALUE;for(int i = 0; i<ordersList.size(); i++) {
Order order = ordersList.get(i);se (order.MAE > worstMAE) {
piorMAE = ordem.MAE;
}
}retornar -1*worstMAE;
}}
Alguém pode me ajudar a encontrar o saldo da conta corrente da negociação e dividir a variável worstMAE por ele? Acho que a função AccountBalance da classe Order deve ser suficiente, mas não consigo fazê-la funcionar.