Ea Analyzer v4 - Calmar Ratio

8 respostas

jaukb

Assinante, 42 respostas.

Perfil da visita

8 anos atrás #113699

Olá Mark,

 

Antes de mais nada, aproveito a oportunidade para agradecer por essa excelente ferramenta e encorajá-lo a continuar com seu trabalho. Comprei uma licença profissional do Analyzer e essa versão também é excelente. Apenas uma pequena solicitação: vocês poderiam adicionar a Calmar Ratio às estatísticas? É uma boa medida de desempenho que a maioria de nós usa.

 

Por outro lado, continue com a ferramenta principal do portfólio. Acredito que esse recurso será o máximo!

 

Mais uma vez, obrigado!

 

Cumprimentos

 

Ou seja: adicionei este tópico aqui porque não consegui fazê-lo na seção de análise (o botão adicionar tópico não está ativado)

 

0

Marca Fric

Administrador, sq-ultimate, 2 respostas.

Perfil da visita

8 anos atrás #130470

Olá,

 

Vou dar uma olhada, gostaria de transformá-lo em um artigo - um exemplo de como estender o programa e adicionar seu próprio valor estatístico.

No entanto, isso levará algum tempo, pois estarei de férias durante toda a próxima semana. Mas ele deverá estar pronto com a versão final do EA Analyzer 4.

Marcar
EstratégiaQuant arquiteto

0

mikeyc

Cliente, bbp_participant, comunidade, 877 respostas.

Perfil da visita

8 anos atrás #130478

Há muitas dessas medidas:

 

http://www.investopedia.com/terms/m/mar-ratio.asp

http://www.investopedia.com/terms/s/sortinoratio.asp

http://www.quantshare.com/item-1450-megan-ratio-maximum-exponential-growth-annualized

https://www.evestment.com/resources/investment-statistics-guide/omega-ratio

 

Não tenho certeza de qual deles é importante ou interessante, portanto, implemente um deles como um snippet no SQ4 e, com sorte, poderemos adicionar outros à medida que as pessoas os solicitarem.

0

jaukb

Assinante, 42 respostas.

Perfil da visita

8 anos atrás #130578

Olá Mike,
 
Obrigado por isso. Seria bom ter um artigo como esse porque alguns de nós também somos programadores e talvez possamos ajudar com esse tipo de solicitação se tivermos um guia para isso. Com relação aos índices, existem muitas medidas diferentes, mas o índice Calmar e, principalmente, o VaR (Value at Risk) são os mais usados. Com relação ao Var, seria bom se ele também estivesse presente na versão final, mas entendo que isso seria difícil, mas acho que é algo que a maioria de nós está procurando para comprar uma ferramenta como o Ea Analizer (eu não, já comprei :-)).
 
Por outro lado, estou realmente ansioso para ter a versão final em minhas mãos para ver o construtor de portfólio genético Mike. Você realmente não imagina o que posso fazer com uma ferramenta como essa... 
 
A propósito, aproveite suas férias!
 
Cumprimentos

0

mikeyc

Cliente, bbp_participant, comunidade, 877 respostas.

Perfil da visita

8 anos atrás #131924

Olá,

 

Vou dar uma olhada, gostaria de transformá-lo em um artigo - um exemplo de como estender o programa e adicionar seu próprio valor estatístico.

No entanto, isso levará algum tempo, pois estarei de férias durante toda a próxima semana. Mas ele deverá estar pronto com a versão final do EA Analyzer 4.

 

Olá Mark,

 

Há alguma chance de um artigo sobre a ampliação do QA4 com novas formas de classificação do Portfolio Master, para que possamos criar funções de adequação personalizadas? Por exemplo, como combinar cálculos como estabilidade, fator de lucro e RT/DD em uma função de classificação?

 

Obrigado,

 

Mike

0

clonex / Ivan Hudec

Cliente, bbp_participant, comunidade, sq-ultimate, colaborador, autor, editor, 271 respostas.

Perfil da visita

8 anos atrás #131947

Corrija-me se eu estiver errado. Este é apenas o primeiro esboço

Basta criar uma nova função de condicionamento físico, excluir tudo e copiar isso. Em seguida, escolha apenas CalmAr

/*
 * Copyright (c) 2015, StrategyQuant - Todos os direitos reservados.
 *
 * O código contido neste arquivo foi criado de boa-fé, com a certeza de que está correto e faz o que deveria.
 * Se você encontrou um bug neste código OU tem uma sugestão de melhoria OU deseja incluir
 * seu próprio trecho de código em nossa biblioteca padrão, entre em contato conosco pelo e-mail:
 *
 * Esse código pode ser usado somente em produtos StrategyQuant.
 * Todo proprietário de uma licença válida (gratuita, de teste ou comercial) de qualquer produto StrategyQuant
 * tem permissão para usar, copiar, modificar ou fazer trabalhos derivados desse código livremente, sem limitações,
 * para ser usado em todos os produtos StrategyQuant e compartilhar suas modificações ou trabalhos derivados
 * com a comunidade StrategyQuant.
 *
 * O SOFTWARE É FORNECIDO "NO ESTADO EM QUE SE ENCONTRA", SEM GARANTIA DE QUALQUER TIPO, EXPRESSA OU IMPLÍCITA,
 * INCLUINDO, MAS NÃO SE LIMITANDO ÀS GARANTIAS DE COMERCIALIZAÇÃO, ADEQUAÇÃO A UM DETERMINADO
 * FINALIDADE E NÃO VIOLAÇÃO. EM NENHUMA HIPÓTESE OS AUTORES SERÃO RESPONSÁVEIS POR QUALQUER REIVINDICAÇÃO, DANO
 * OU OUTRA RESPONSABILIDADE, SEJA EM UMA AÇÃO DE CONTRATO, ATO ILÍCITO OU DE OUTRA FORMA, DECORRENTE DE,
 * FORA OU EM CONEXÃO COM O SOFTWARE OU COM O USO OU OUTRAS NEGOCIAÇÕES COM O SOFTWARE.
 *
 */
package com.strategyquant.extend.FitnessFunctions;
import com.strategyquant.lib.fitness.FitnessFunction;
import com.strategyquant.lib.results.SQResultsGroup;
import com.strategyquant.lib.results.SQStats;
import com.strategyquant.lib.results.StatsConst;
import com.strategyquant.lib.settings.SQConst;
import com.strategyquant.lib.utils.SQUtils;
public class CalmarRatio extends FitnessFunction {
   public CalmarRatio() {
      super();
      nome = "Calmar";
      type = FitnessFunction.MAXIMIZE;
   }
   @Override
   public double computeFitness(SQResultsGroup resultsGroup) throws Exception {
      SQStats stats = resultsGroup.getResult(SQConst.SYMBOL_PORTFOLIO).getStats(SQConst.DIRECTION_ALL, SQConst.PL_IN_MONEY, SQConst.KEY_SAMPLE_ALL);
      double fitness = SQUtils.safeDivide(stats.getDouble(StatsConst.CAGR), stats.getDouble(StatsConst.DRAWDOWN));
      return fitness;
   }
}

0

clonex / Ivan Hudec

Cliente, bbp_participant, comunidade, sq-ultimate, colaborador, autor, editor, 271 respostas.

Perfil da visita

8 anos atrás #131948

Olá Mark,

 

Há alguma chance de um artigo sobre a ampliação do QA4 com novas formas de classificação do Portfolio Master, para que possamos criar funções de adequação personalizadas? Por exemplo, como combinar cálculos como estabilidade, fator de lucro e RT/DD em uma função de classificação?

 

Obrigado,

 

Mike

Mikey . Mais uma vez. Corrija-me se eu estiver errado.

 

Você pode definir seu condicionamento físico com muita facilidade 

 

  @Override
   public double computeFitness(SQResultsGroup resultsGroup) throws Exception {
      SQStats stats = resultsGroup.getResult(SQConst.SYMBOL_PORTFOLIO).getStats(SQConst.DIRECTION_ALL, SQConst.PL_IN_MONEY, SQConst.KEY_SAMPLE_ALL);
 
      double stability = stats.getDouble(StatsConst.STABILITY);
      double profitfactor = stats.getDouble(StatsConst.PROFIT_FACTOR);
      double fitness = stability*profitfactor;
      
     
      
      return fitness;
 
Não se esqueça de criar um novo valor de estatística para confirmação ....

0

Juan Carlos del Carmen Garcia

Assinante, bbp_participante, cliente, comunidade, 7 respostas.

Perfil da visita

4 anos atrás #247419

Olá, boa tarde

Seguindo as instruções que você forneceu nesta postagem, ainda não sei por que estou recebendo um erro de compilação na linha 36 e na coluna 25, que declara o caractere ilegal "\ufffd" e, como resultado, afirma que a compilação falhou (ou seja, captura de tela anexada)

Como devo proceder?

Agradecemos antecipadamente por sua pronta resposta

 

Anexos:
Você deve ser logado para ver os arquivos anexos.

0

tomas262

Administrador, sq-ultimate, 2 respostas.

Perfil da visita

4 anos atrás #247421

Olá, você pode anexar o código Java (compactado) ou enviar para [email protected]? Posso verificar

0

Visualizando 8 respostas - 1 até 8 (de um total de 8)