Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Tentei criar meu próprio programa de cálculo de carteira de ações. Otimização pelo método do minimax (modificado para citações).
Duas carteiras são tomadas para cálculo: Long - somente para posições longas e Short - somente para posições curtas. Supõe-se que US$ 100 precisam ser alocados para a carteira Longa e US$ 100 para a carteira Curta. Aqui estão os resultados:
Nota:
Todos os cálculos são baseados em preços líquidos de fechamento, excluindo spreads, swaps e comissões.
A primeira coluna é a proporção em dólares para ações (ou, por analogia, como investimento percentual).
Segunda coluna - lucro
Terceira coluna - instrumento financeiro (ações)
Total - lucro total da carteira.
No início eu não conseguia entender por que a otimização incluiria a perda consciente de ações na carteira, ou seja, o pagamento esperado, do qual é negativo. Então descobri que se essas ações deficitárias fossem removidas, o resultado final certamente aumentaria, mas isso levaria a um profundo levantamento de capital.
ao Neutron
Puxei meus arquivos, isso mesmo, usando um modelo tão linear dá um total absurdo. Nada funciona. Portanto, eu não compartilho de seu otimismo "insalubre".
para Reshetov
Isso é interessante, mas não dá para perceber o que está sendo feito. Parece um "sapo". E também não posso comparar duas frases "Eu tentei criar meu próprio programa" e "No início eu não conseguia entender porque a otimização inclui a perda consciente de ações no portfólio". Você apenas usou algum modelo de otimização externa ou alguma "caixa fechada com alguma inteligência enfiada nela" - digamos, HC ou GA. Mas ainda não entendo porque o "algoritmo por si só" empurra algo para algum lugar. Se este é o NS, então sobre quais dados foram treinados (ou seja, onde eles obtiveram a pontuação mais "ótima").
Calculado com base em 130 barras de meia hora, ou seja, duas últimas semanas - 10 sessões de negociação em 35 instrumentos financeiros (32 ações da Média Industrial Dow Jones e 3 ações do índice Dow Jones) usando o critério Laplace aprimorado.
A otimização implica um critério entre o retorno máximo de cada dólar investido e o saque mínimo do depósito. Portanto, não devemos nos surpreender se alguns ativos forem acrescentados à carteira que se sabe terem sofrido perdas durante o período examinado, pois seu papel é de cobertura, ou seja, mitigar o risco de um saque de depósito. Os ativos deficitários e rentáveis da carteira sempre terão a mais alta correlação negativa. No entanto, não necessariamente ativos deficitários e lucrativos. Se a carteira consiste apenas em ativos rentáveis, a correlação negativa entre ativos de alto e baixo rendimento ainda é levada em conta. Nesse caso, os ativos de baixo rendimento desempenharão um papel de cobertura para ativos de alto rendimento.
Os cálculos não levam em conta: spreads, comissões de corretagem, dividendos e swaps de interseção. Todos os cálculos são baseados no preço do Bid dos ativos, ou seja, sem alavancagem.
Supõe-se que um investidor tenha USD 100, que devem ser investidos de forma otimizada em ativos da bolsa de valores americana - a primeira coluna da tabela. O número resultante deve ser dividido aritmeticamente pelo valor do ativo para obter o número necessário de ações.
Ao contrário de outras avaliações, neste caso não apenas a estratégia Buy and Hold é considerada, mas também a venda a descoberto de ativos.
Horário de cálculo da carteira: Dom 14 Dez 14:07:06 PKT 2008 +5 GMT
(ou dólares americanos,
se você pretende investir
$100)
com base em
10 sessões de negociação anteriores
Short Sell
Venda curta
Venda curta
Venda curta
Venda curta
Short Sell
ao Neutron
Isso é interessante, mas não dá para perceber o que está sendo feito. Parece um "sapo".
Não importa no que é feito. Na verdade, o resultado final está em uma aplicação Java. Mas pode ser implementado na MQL4 com relevante perda de velocidade, o que no momento não é totalmente aceitável, já que é difícil encaixar os cálculos no período entre as sessões comerciais. Até agora a implementação está em duas linguagens de programação: a aplicação Java lança o terminal MT4 especificando o Expert Advisor em MQL4 na linha de comando. O Expert Advisor faz o download das citações e as pré-processa. Ele armazena os resultados em um arquivo. Após o processamento do script, o terminal é automaticamente descarregado e o programa Java recebe o código de desligamento do terminal e retira os dados do arquivo e realiza a otimização. Os resultados são então exibidos na janela do aplicativo e no arquivo como uma página da web.
ao Neutron
Era apenas um modelo de otimização externa ou algum tipo de "caixa fechada com inteligência embutida" - digamos, HC ou GA? Mas ainda não entendo porque o "algoritmo por si só" empurra algo para algum lugar. Se for NS, sobre quais dados foram treinados (ou seja, onde eles obtiveram a "conta ideal")
Isto é otimização da matriz de pagamento por critérios. Isto é, não GA, uma vez que GA encontra um único extremo e, portanto, é um extremo adequado. O melhor, ou seja, o único no extremo do retorno, pode ser encontrado muito mais facilmente, ou seja, dividir o lucro do período em análise pelo preço inicial da ação - oscilador de momentum e investir lá onde o resultado máximo é obtido. Isto é, a otimização por algoritmos adicionais para encontrar o máximo retorno é redundante, porque existe apenas uma solução. Quanto às redes neurais, também não faz sentido, pois não está claro o que alimentar os insumos.
A otimização entra em jogo quando, além da máxima rentabilidade, precisamos considerar o risco de drawdown. Considerando o teorema acima e o teorema do minimax, a solução ótima encontrada pode não ser a única (o teorema afirma que há pelo menos uma solução).
para Reshetov
Lutando com a crise, eu perdi sua resposta :o). Obrigado pelo esclarecimento.
...Т.е. оптимизация дополнительными алгоритмами для поиска максимальной доходности излишняя, поскольку решение единственное... Смысл оптимизации проявляется тогда, когда необходимо помимо максимальной прибыльности еще и учитывать риск просадок.
Escrevi que levarei em conta muito mais parâmetros, incluindo não apenas o drawdown, mas também o risco da própria operação. E o modelo é na verdade mais complexo - na foto eu mostrei uma <parte de segmentos>:
Os clientes estão "sequencialmente" em diferentes instrumentos, com diferentes correlações de suas características (toda essa variedade descrita anteriormente) e horários de início. E já começa a fazer sentido - levar em conta o lucro "teórico" futuro de cada negócio na otimização. Portanto, a busca pelo ideal é bastante relevante e parece que a LP é a única e eficaz ferramenta. Até agora, sem muitas explicações (parece óbvio), mas aqui aparece tal gráfico de previsões de negócios (em algum sentido, muito condicionalmente):
Onde a ramificação é a tomada de decisão para a abertura de novos negócios (incluindo "transbordo" de lucro por "canais", ou melhor, por ativos). Bem, é uma longa história, até agora esta é breve. Espero (se o tempo for suficiente) publicar estudos mais detalhados em breve.
Quanto às redes neurais, também não faz sentido, pois não está claro o que se alimentar de insumos.
Eu concordo
Reli meu posto e decidi esclarecer a aparência do gráfico só por precaução. Tudo já deveria estar claro aqui:
E é sobre isso que estou rodando a LP - resultados muito interessantes :o)
O tema ainda é relevante? A programação de metas (multicritério) foi considerada para uma gestão otimizada de ativos? (ao invés de linear)
Claro que é, se você tem algo a dizer, no sentido de oferecer.
Um problema de programação alvo é um problema sobre a composição ideal, sob determinadas restrições. Isto é, se houver várias funções de alvo linear, possivelmente conflitantes, então a programação de alvo pode ser usada para encontrar uma solução de compromisso. Eu não usei este método para a gestão de ativos, mas pensei que ele poderia ser usado aqui também. Difere da programação linear porque a programação linear implica um TF, enquanto a programação de objetivos implica vários.