Outros sites Medialivre
Caldeirão da Bolsa

Sistemas Automáticos - Transformar 1000€ em 35.000€

Espaço dedicado a todo o tipo de troca de impressões sobre os mercados financeiros e ao que possa condicionar o desempenho dos mesmos.

por vdap » 25/5/2012 18:52

double StopLossPricebyATR1(datetime SLPA.ATRTimeFrame)
{
int SLPA.ATRPeriod = 5;
double SLPA.CalculatedStopLossPrice=0.;
static double SLPA.ATRArray[3],SLPA.ATRArrayMax=0.;
static int SLPA.BarOpenATRTimeFrame;
double SLPA.Spread = MarketInfo(Symbol(),MODE_SPREAD)*Point;
if(iBars(Symbol(),SLPA.ATRTimeFrame)<SLPA.ATRPeriod+1)
{
Print("Not enough bars in the specified chart for computing stoploss by ATR");
Print("Current timedate = ",TimeToStr(TimeCurrent())," and bar count is ",iBars(Symbol(),SLPA.ATRTimeFrame));
int StopLossMaximo=300;
return(StopLossMaximo);
}
if(iTime(Symbol(),SLPA.ATRTimeFrame,0)!=SLPA.BarOpenATRTimeFrame) {
SLPA.ATRArray[0]=iATR(NULL,SLPA.ATRTimeFrame,SLPA.ATRPeriod,0);
SLPA.ATRArray[1]=iATR(NULL,SLPA.ATRTimeFrame,1,0);
SLPA.ATRArray[2]=iATR(NULL,SLPA.ATRTimeFrame,1,1);
SLPA.ATRArrayMax=SLPA.ATRArray[ArrayMaximum(SLPA.ATRArray)];
SLPA.BarOpenATRTimeFrame=iTime(Symbol(),SLPA.ATRTimeFrame,0);
}
RefreshRates();
double SLPA.Price=(Bid+Ask)/2;
SLPA.CalculatedStopLossPrice=NormalizeDouble(SLPA.Price-SLPA.ATRArrayMax,MarketInfo(Symbol(),MODE_DIGITS));
SLPA.CalculatedStopLossPrice=(SLPA.Price-SLPA.CalculatedStopLossPrice)/MarketInfo(Symbol(),MODE_POINT);
return(SLPA.CalculatedStopLossPrice);

}
Avatar do Utilizador
 
Mensagens: 213
Registado: 29/11/2007 14:10
Localização: 12

por vdap » 25/5/2012 18:47

Caro Luís,
Obrigado pela sua participação neste tópico.

Luís: Eu tenho os indicadores que utilizo no EA nessa pasta include.

Bem, acho que deve estar enganado os indicadores encontram-se dentro da pasta Indicators e são do tipo *.mql4 e não do tipo *.mqh.

Luís: Se puderes partilhar algum desses ficheiros agradecia, por exemplo o cálculo do stop pelo ATR para eu testar a sua inclusão num EA.

Caro Luís, a título de excepção vou partilhar a função que me pediu, no entanto, não o vou fazer com mais nenhuma, como deve compreender um forum é um local de debate para todos aprendermos e estarei disposto a indicar vários aspectos e pedaços de código que incluo nas várias funções.

Não pense que é má vontade, no entanto, é a mesma coisa quando chegam aqui utilizadores que vêm perguntar que acções comprar ou vender ou onde podem investir para ter uma rentabilidade de 10% ao mês…

Outro aspecto é que perdi muitas horas de pesquisa sobre os diversos temas e muito tempo a fazer, refazer, encontrar bugs nas diversas funções… ectc.. etc…

Além de que estas funções estão exclusivamente adaptadas p/ o meu tipo de negociação….
como o Luís sabe encontrar robots lucrativos na internet é impossível… e funções minimamente ajustadas é muito difícil… porque tantas horas de programação custam muito dinheiro.

Luís: Logo que eu tenha este EA a funcionar mais ou menos vou pedir-te ajuda para o melhorar com algumas dessas funções.

Mais uma vez ajudarei no que poder com novas ideias, e com algum código que o luís possa precisar, até mesmo implementação de novos algoritmos…

Luís: Outra questão, como conseguiste obter 90% de resultado no modelamento? Os dados eram os do teu broker ou fizeste DL de dados?

Respondendo às duas perguntas encontra-se a correr na conta da XTB, o modelamento só foi possível com um backtest de apenas 3 meses se alargar o período passo para 67%.

Relativamente ao ensaio em geral e como está no inicio negoceia poucas vezes devido a estar com 1000€ na semana passada deu lucro de 246€ e esta semana está com -122€.

Disponha,

vdap
Avatar do Utilizador
 
Mensagens: 213
Registado: 29/11/2007 14:10
Localização: 12

por LUISSM3 » 23/5/2012 0:51

Boas vdap,

Sim foste bastante claro,

Eu tenho os indicadores que utilizo no EA nessa pasta include.

Mas nunca tinha pensado em termos de simples funções, mas faz sentido sem dúvida.

Se puderes partilhar algum desses ficheiros agradecia, por exemplo o cálculo do stop pelo ATR para eu testar a sua inclusão num EA.

Julgo que encontrei há uns tempos na comunidade MQL4 alguns exemplos desses já criados.

Um deles é o BreakEvenExpert, cuja função é passar os stops para break even automaticamente sempre que possível.

Logo que eu tenha este EA a funcionar mais ou menos vou pedir-te ajuda para o melhorar com algumas dessas funções.

Outra questão, como conseguiste obter 90% de resultado no modelamento? Os dados eram os do teu broker ou fizeste DL de dados?

Como está a correr o ensaio geral? Está a corresponder ao esperado? Estas a testar com a XTB?
Bons Ventos,
SW
Avatar do Utilizador
 
Mensagens: 929
Registado: 29/11/2007 9:59

por vdap » 17/5/2012 19:49

Boas Luís,

Eu utilizo ficheiros que se encontram na pasta include, que tem extensão *.mql Preparo as funções em vários ficheiros.
Um ficheiro pode ter mais do que uma função.
Depois basta fazer o include desse ficheiro no EA e chamar a função que pretendes com parâmetros que podem ser alterados.

por exemplo:

tens a função abaixo:


//+=============================================================================================+
//| HideStoplossTakeprofit() function |
//| |
//| Parametros: |
//| * HST.SignalHST: Habilita ou desabilita a função |
//| * HST.MagicNumber: MagicNumber do EA |
//| * HST.Stoploss: Pips para o Stoploss |
//| * HST.Takeprofit: Pips para o Takeprofit |
//+=============================================================================================+

bool HideStoplossTakeprofit(bool HST.SignalHST,int HST.MagicNumber, double HST.Stoploss, double HST.Takeprofit)
{
if(!HST.SignalHST)
return(true);

if(HST.Stoploss<=0 || HST.Takeprofit<=0) {
Print("Function HideStoplossTakeprofit: Stoploss / Takeprofit têm que ser amiores que zero. Valor do SL: ",
HST.Stoploss," TP: ",HST.Takeprofit);
return(false);
}

string HST.Symbol=Symbol();
HST.Stoploss=NormalizeDouble(HST.Stoploss*Point,Digits);
HST.Takeprofit=NormalizeDouble(HST.Takeprofit*Point,Digits);
int HST.maxslip=2;
int HST.TradeAllowed;
bool HST.Ticket;

for(int HST.i=0;HST.i<OrdersTotal();HST.i++)
{
if(!OrderSelect(HST.i,SELECT_BY_POS,MODE_TRADES)) continue;

if(OrderMagicNumber()!=HST.MagicNumber || OrderSymbol()!=HST.Symbol) continue;
//---- check order type
if(OrderType()==OP_BUY)
{
Print("OrderOpenPrice()+HST.Takeprofit: ",OrderOpenPrice()+HST.Takeprofit," OrderOpenPrice()-HST.Stoploss: ",OrderOpenPrice()-HST.Stoploss);
if(Bid>OrderOpenPrice()+HST.Takeprofit) {
HST.TradeAllowed = TradeAllow();
if(HST.TradeAllowed < 0) return(-1);
if(HST.TradeAllowed == 0) RefreshRates();
HST.Ticket=OrderClose(OrderTicket(),OrderLots(),Bid,HST.maxslip,White);
if(!HST.Ticket) Print("Function HideStoplossTakeprofit: Erro ao fechar ordem BUY p/ symbol ",HST.Symbol,".TAKEPROFIT");
}

if(Ask<OrderOpenPrice()-HST.Stoploss) {
HST.TradeAllowed = TradeAllow();
if(HST.TradeAllowed < 0) return(-1);
if(HST.TradeAllowed == 0) RefreshRates();
HST.Ticket=OrderClose(OrderTicket(),OrderLots(),Bid,HST.maxslip,White);
if(!HST.Ticket) Print("Function HideStoplossTakeprofit: Erro ao fechar ordem BUY p/ symbol ",HST.Symbol,". STOPLOSS");
}
break;
}// IF DO OP_BUY

if(OrderType()==OP_SELL)
{
Print("OrderOpenPrice()-HST.Takeprofit: ",OrderOpenPrice()-HST.Takeprofit," OrderOpenPrice()+HST.Stoploss: ",OrderOpenPrice()+HST.Stoploss);
if(Ask<OrderOpenPrice()-HST.Takeprofit) {
HST.TradeAllowed = TradeAllow();
if(HST.TradeAllowed < 0) return(-1);
if(HST.TradeAllowed == 0) RefreshRates();
HST.Ticket=OrderClose(OrderTicket(),OrderLots(),Ask,HST.maxslip,White);
if(!HST.Ticket) Print("Function HideStoplossTakeprofit: Erro ao fechar ordem SELL p/ symbol ",HST.Symbol,". TAKEPROFIT");
}

if(Bid>OrderOpenPrice()+HST.Stoploss) {
HST.TradeAllowed = TradeAllow();
if(HST.TradeAllowed < 0) return(-1);
if(HST.TradeAllowed == 0) RefreshRates();
HST.Ticket=OrderClose(OrderTicket(),OrderLots(),Ask,HST.maxslip,White);
if(!HST.Ticket) Print("Function HideStoplossTakeprofit: Erro ao fechar ordem SELL p/ symbol ",HST.Symbol,". STOPLOSS ");
}
break;
}// IF DO OP_SELL
}//END DO FOR
return(true);
}



Imagina que o ficheiro tem o nome 123.mql


No EA onde se declara as variaveis globais para chamar a função utilizavas o seguinte:

#include <123.mqh>

e depois dentro do corpo do programa, bastava chamar a função exemplo:


HST.SignalHST=true;
HST.MagicNumber=123456789;
HST.Stoploss=200;
HST.Takeprofit=100;
HideStoplossTakeprofit(HST.SignalHST,HST.MagicNumber,HST.Stoploss,HST.Takeprofit);


Não sei se fui claro...

Cumprimentos
Avatar do Utilizador
 
Mensagens: 213
Registado: 29/11/2007 14:10
Localização: 12

por LUISSM3 » 17/5/2012 19:23

Boas vdap,

Não cheguei a correr o EA que se encontra na comunidade MQL4, apenas fiz o DL para analisar o código.

Qual a vantagem em criar ficheiros *.mql em separado dessas funções?

As únicas que utilizo em separado, são funções tipo indicador invocando-as depois.

Tu crias ficheiros em separado para cada função, sendo que depois recorres a elas como funções externas?

Ou apenas crias os ficheiros e guardas para depois copiares o código para o programa em que te encontras a trabalhar?

De qualquer forma é boa ideia ir criando um arquivo das funções principais a utilizar como módulos. Uso esse método em VBA aplicado a ACCESS.

PS: Podes tratar na 2ª pessoa, é um habito aqui no fórum.
Bons Ventos,
SW
Avatar do Utilizador
 
Mensagens: 929
Registado: 29/11/2007 9:59

por vdap » 17/5/2012 18:32

Caro luissm,

Como já referi do EA StopHunter, em que coloquei o link só aproveitei uma parte das formulas para arredondar os números não utilizei mais nada.

Quando à formula do money management e outros módulos de controlo utilizados, foi tudo desenvolvido por mim, (aliás tenho tudo em ficheiros *.mql, pronto a utilizar em experts) nunca recorri a nenhuma fórmula ou partes de código disponibilizados na Web, para estas funções, aliás é por isso que o EA disponibilizado no site do mql4 não dá lucro se incluir as comissões e o meu EA dá bastante lucro.

O EA está correr numa conta demo e para agora está dentro dos parâmetros.

Se o Luís pretende dedicar-se de corpo e alma aos robots de negociação, seria bastante prático, perder um tempinho a fazer ficheiros *.mql com as funções mais utilizadas. Por exemplo:

- funções de acção no mercado: OP_BUY,OP_SELL,OP_BUYLIMIT,OP_SELLLIMIT,OP_BUYSTOP,OP_SELLSTOP; fechar posições parcialmente; contagem de posições abertas; verificaro se o servidor se encontra ocupado, etc... etc...

- funções de money management

- funções de stop: trailling stop, stop p/ breakevean, calculo do stop pelo atr, calculo do stop por uma percentagem fixa de dinheiro a arriscar etc...

- funções para detecção de erros e respectivos alertas e mensagens para o utilizador.

- apesar de ter( e não utilizar muito) funções com takeprofit e stoploss "virtuais", ou seja, não enviar o stop para a correctora e o programa estar sempre em monitorização aos trades abertos para executar o fecho da ordem no stoploss ou no takeprofit...

etc... etc...

Alguma dúvida disponha,

Cumprimentos,
Avatar do Utilizador
 
Mensagens: 213
Registado: 29/11/2007 14:10
Localização: 12

por LUISSM3 » 17/5/2012 2:15

Billy Ray Valentine Escreveu:
JCS Escreveu:Zeca, apenas perguntei o nome do software de teste... Quanto ao resto que referes nem me pronunciei.

JCS


Ola , o software é o metatrader, que é a plataforma mais utilizada nos brokers de divisas (forex)

A qualidade de backtest que apresentas é baixa....eu aconselhava-te a tentar chegar no minimo ao 90 % de qualidade.

http://4xtrader.net/mt4-back-testing-modeling-quality/

Abraço


Billy Ray Valentine,

Reconheço a importância em garantir a precisão dos dados para fazer backtesting.

Como é sabido constroem-se os vários time frame com base nas cotações ao minuto.

No entanto é difícil encontrar DB intraday (ao minuto) para determinados ativos.

Principalmente ações. Se alguém souber onde encontrar agradecia.

Deixo entretanto uma questão, se estivermos a testar um sistema de Trend Following em que apenas nos interessem geralmente as cotações de Abertura Fecho Max e Min diários, não será fiável efetuar o teste recorrendo por exemplo às cotações do Yahoo finance, ou outras BD fiáveis, sendo estas apenas de dados diários?

É certo que no MT4 não podemos escolher o método “Toda cotação (baseado na disponibilidade do período com interpolação fractal)” mas talvez “Pontos de controle (baseado no ponto mais próximo do período inferior com interpolação fractal)”.

Neste caso não temos % de modelação, mas os resultados podem ser considerados fiáveis certo?

Gostava da tua opinião.


Vdap,

Agradeço a explicação, irei analisar esse EA com cuidado, afim de poder aplicar algumas ideias ao que estou a fazer.

À primeira vista, não encontrei o Money Management controlado pelo ATR, já fazia parte do código original? Ou foi alteração tua?

Quanto à recapitalização, ele recorre à formula “Lots=AccountFreeMargin()/100000*Risk_percent;” que aumenta o lote à media que a conta vai crescendo.

Quando surgirem mais dúvidas entrarei em contacto.
Bons Ventos,
SW
Avatar do Utilizador
 
Mensagens: 929
Registado: 29/11/2007 9:59

por vdap » 10/5/2012 17:12

Entretanto após algumas alterações,

O valor do ProfitFactor foi aumentado para 1.69 e o Drawdown reduzido para 25.45%.

O problema deste sistema é mesmo ser um scalper, ganhos muito pequenos para perdas elevadas, apesar dos ganhos serem perto de 8 vezes mais do que as perdas, pode-se apanhar meses que é preciso "tomar umas pastilhas para o coração".

Fiquem à vontade para comentar.

cumprimentos,
Anexos
SISTEMA E.png
SISTEMA E.png (104.87 KiB) Visualizado 3549 vezes
Avatar do Utilizador
 
Mensagens: 213
Registado: 29/11/2007 14:10
Localização: 12

por vdap » 10/5/2012 16:58

Boa tarde,

Caro Crómio,

Penso que já li vários comentários do crómio sobre sistemas automáticos, já não me lembro onde nem quando, mas se a memória não me falha, penso que já deu uns contributos positivos à comunidade sobre sistemas automáticos.

De facto tem toda a razão, até mesmo um backtest com 100%, o robot pode sempre comportar-se de forma diferente no mercado real.

Caro Luís,
Obrigado pela sua intervenção.

Luís: Quais as variáveis que colocaste passíveis de otimização?

Bem as variáveis são praticamente todas possíveis de optimizar a questão aqui é que se alterarmos todas as variáveis começamos a entrar em combinações do nível exponencial mas posso dar exemplos:

- Timeframes de negociação;
- Distancia de stoploss: definido pelo ATR, 2*ATR, ou percentagem de conta a arriscar;
- Distancia do preço inicial para mover stop para breakeven.
- distancia do step que o trailling stop faz quando a posição se encontra ganhadora.
- valor do atr passado para a função do moneymanagement.
- numero de posições abertas, tanto longas como curtas,
etc...

bem claro que existem variáveis que com algum tempo já não alteramos, ou existem 2 ou três valores que sabemos que são os que trazem melhores resultados.

Finalmente a pergunta que estava à espera, em que é que se baseia este sistema. ou,

Luís: Qual a base técnica do sistema?

O sistema baseia-se na estratégia StopHunter, foi desenvolvido especificamente para o DAX, e podes encontrar mais informações aqui:

http://codebase.mql4.com/6982 (de onde surgiu a ideia)

http://www.investopedia.com/articles/fo ... unting.asp

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

Claro que deste EA que se encontra no forum do mql4 só utilizei as fórmulas para arredondar os valores, alterei o expoente para 2, e alterei uma parte das fórmulas p/ ter os valores de 50 em 50 pontos e não de 100 em 100 pontos.

Luís: Gostava de saber como programaste a recapitalização dos lucros assim como a gestão da volatilidade.

Bem isto tem a ver com a minha função do money management, de facto utilizo o atr de (9) e o atr de (2) no timeframe horário para saber como está o mercado. Faço a divisão do ATR9/ATR2, defino como 1 o valor máximo desta divisão:

A seguir imagina que vou arriscar 5% (ou outro valor qq encontrado pela tua fórmula de money management) multiplicas pelo resultado que deu a divisão.

Exemplo:
para ATR(9)=45
para ATR(2)=38
ATR9/ATR2=1.18, como o resultado não pode ser superior a 1, fica = 1.
quantidade dinheiro a arriscar: 0.05*1000€*1=50€.

Exemplo2:
para ATR(9)=35;
para ATR(2)=46;
ATR9/ATR2=0.76
quantidade dinheiro a arriscar: 0.05*1000*0.76=38€

Claro se o valor for muito baixo (podes definir um valor mínimo em que fica fora do mercado.
(espero ter sido claro)

Relativamente ao trocar de impressões,
Está à vontade, podemos trocar impressões aqui no forum ou envie-me uma mensagem privada.

Cumprimentos,

vdap
Avatar do Utilizador
 
Mensagens: 213
Registado: 29/11/2007 14:10
Localização: 12

por LUISSM3 » 10/5/2012 16:18

Boas,

Há uns dias atrás, depois que o JCS colocou no tópico “Trend following: discussão de sistemas de trading” o vídeo do Russell Sands – I Am a Turtle resolvi testar a estratégia relatada.

Trata-se de um dos sistemas dos Turtle da década de 80.

Depois de programar no MT fiz alguns testes com os ativos por ele recomendados, café, sumo de laranja e algumas moedas. O resultado ao 1º teste foi bastante mau.

No entanto antes de abandonar a ideia, testei por acaso na Alcatel, e o resultado já foi mais interessante.

No entanto, obtive vários erros gráficos, tive de incluir trailing stops e fazer bastante otimização o que não é muito aconselhável, para não falar no Fator de Lucro que ultrapassava significativamente o normal.

Quando tiver dados concretos e aceitáveis, publicarei no fórum e colocarei o código à disposição.

Pareceu-me interessante este teu resultado, principalmente o fato de recorrer à capitalização dos lucros e ao condicionamento das operações à volatilidade, recorrendo julgo eu ao ATR.

Já agora, quais as variáveis que colocaste passíveis de otimização? Já testaste variar o período da ATR subindo para 8 e 13?

Qual a base técnica do sistema?

Gostava de saber como programaste a recapitalização dos lucros assim como a gestão da volatilidade. Para testar neste EA.

Outro teste que pretendo implementar será piramidagem de posições, utilizada em sistemas de trend following que pode potenciar significativamente o sistema é claro aumentando a exposição.

Gostava ainda de trocar mais impressões contigo sobre programação de sistemas, pois aqui no fórum existem poucas pessoas familiarizadas com o MT.

Quanto ao risco de fazer um "acid test" a esse sistema, acho que deves ir em frante, afinal o que são 1000€? O drawdown elevado nesse caso utiliza lucros e se o sitema reinveste os lucros, no limite vai sempre crescendo assim que cresçam os lucros. O que é bom sinal. :wink:

Vai em frente com o 2º.
Bons Ventos,
SW
Avatar do Utilizador
 
Mensagens: 929
Registado: 29/11/2007 9:59

por Crómio » 10/5/2012 15:10

vdap Escreveu:...
2- Repare que a qualidade de modelamento é extremamente baixa, apenas de 50%, e os resultados devem ser interpretados de acordo com esse modelamento.
...


Esse é um exemplo dum backtest que deve simplesmente ser ignorado. Menos de 90% não serve para ter uma ideia do comportamento do sistema. E 90% é pouco.

Não se iludam com estes testes, a desilusão vem quando o colocam em real...

Abraço,
Crómio
There are two kinds of investors: those who don't know where the market is headed, and those who don't know that they don't know.

William Bernstein
Avatar do Utilizador
 
Mensagens: 2745
Registado: 2/11/2007 16:52

por vdap » 10/5/2012 14:49

Caro Viclion,

Obrigado pelo seu comentário,

Sem muito tempo para lhe responder, fica abaixo a simulação de 01 de Agosto 2011 a 01 de Outubro de 2011.

Quero apenas chamar a atenção para duas coisas:

1 - Como o programa se recusa a negociar quando a volatilidade é grande e se encontra com pouco dinheiro em conta, tive que passar o saldo inicial da conta para 2000€.

2- Repare que a qualidade de modelamento é extremamente baixa, apenas de 50%, e os resultados devem ser interpretados de acordo com esse modelamento.

cumprimentos,
Anexos
Simulação Agosto_Outubro.png
Simulação Agosto_Outubro.png (123.92 KiB) Visualizado 4052 vezes
Avatar do Utilizador
 
Mensagens: 213
Registado: 29/11/2007 14:10
Localização: 12

por Viclion » 9/5/2012 23:45

Sobre trading automático estou a zero, não posso emitir opinião sobre a qualidade das simulações.

Sobre a amostragem, penso que seria preferível um período mais longo, que permitisse englobar os meses de Agosto a Outubro de 2011, pois foram meses com uma volatilidade extraordinária. Se o puder fazer e transmitir-nos os resultados seria bom.

Sobre a pergunta em si, e se entendi bem, a opção colocada é meramente financeira - benefício vs risco.

A minha opção iria para a hipótese B.

Porquê? Fiz um rácio muito simplista e grosseiro, tentando imitar o índice de Sharpe (não inclui desvio padrão, taxa de juro sem risco, etc).

Fiz assim: racio dos ganhos a dividir pelo rácio dos downdrawns, e cheguei ao valor de 1,81. Numa selecção rápida de fundos, este valor coloca-o no top 10, o que me parece aceitável.

Depois temos a questão da tolerãncia ao risco. Os tais 50% de downdrawn, que são na realidade 46%, podem ser suportados se tivermos a garantia de boa execução, de dados fiáveis, de cumprimento dos tais 5% de risco, coisa que um SW faz mais fielmente do que os humanos (se não houver bugs).

Daqui concluo pela opção B.

Espero aprender algo sobre este tema.
Avatar do Utilizador
 
Mensagens: 119
Registado: 19/9/2011 12:14
Localização: Maia

por vdap » 7/5/2012 16:34

EuroVerde Escreveu:Meu! não tenho ideias de investir nisso.

700 e tal trades isso dá mais que 2 trades por dia. Só para quem não tem mais nada que fazer.

Obviamente negociar indices com base em time frames inferiores ao diário pode dar borrada para a maioria, tenham ou não um sistema.


Oh EuroGreen, confessa lá, não leste nada do tópico.

É um sistema totalmente automático entra e sai do mercado sem intervenção humana.
Avatar do Utilizador
 
Mensagens: 213
Registado: 29/11/2007 14:10
Localização: 12

por EuroVerde » 7/5/2012 16:02

Meu! não tenho ideias de investir nisso.

700 e tal trades isso dá mais que 2 trades por dia. Só para quem não tem mais nada que fazer.

Obviamente negociar indices com base em time frames inferiores ao diário pode dar borrada para a maioria, tenham ou não um sistema.
Avatar do Utilizador
 
Mensagens: 4960
Registado: 29/11/2007 11:19

por vdap » 7/5/2012 15:07

Caro Automech,

Foi contigo que troquei uns posts sobre programação em Metastock, ainda continuas a utilizar o metastock?? que tal esses sistemas mecânicos?

Sim este sistema já leva em conta os spreads, que neste caso é de 1.5 pips, mas fica abaixo a informação completa.

Cumprimentos,
Anexos
Dimensão do contrato.png
Dimensão do contrato.png (39.67 KiB) Visualizado 4763 vezes
Avatar do Utilizador
 
Mensagens: 213
Registado: 29/11/2007 14:10
Localização: 12

por nunoand99 » 7/5/2012 14:59

Boas rsacramento,

Isso é quase uma lapalissada :)

Contudo,


1.
Isso depende do critério que define oportunidade!
Se só entrarmos em movimentos com potencial de ganhos 3 vezes, ou mais, superior ao de percas, o raciocinio não se aplica. Existe um multiplo a enviesar para o lado dos ganhos.


2.
Partindo do principio que outras partes do capital estarão investidas em movimentos com algum tipo de correlação com este, mas com diferentes volatilidades (e alavancagens), o referido também pode ser minimizado.



E então em forex isto é o pão nosso de cada dia, porque muito mais facilmente do que em outros mercado, se encontram activos com correlações negativas.

Dito por outras palavras, a estratégia de relacionamento entre as diferentes parcelas do capital aplicado deve gerar valor per si ;)

Ah,

Oh dito de outras duas formas pelo Sun Tzu:

"...Victorious warriors win first and then go to war, while defeated warriors go to war first and then seek to win..."

"...The expert in battle seeks his victory from strategic advantage and does not demand it from his men..."

Saudações Cordiais.
 
Mensagens: 1344
Registado: 16/5/2005 21:38

por Automech » 7/5/2012 14:46

vdap, e as comissões ?
Ou é um sistema forex/CFD que já toma em conta os spreads ?
No man is rich enough to buy back his past - Oscar Wilde
Avatar do Utilizador
 
Mensagens: 9360
Registado: 4/6/2010 12:12
Localização: 16

por rsacramento » 7/5/2012 14:34

nunoand99 Escreveu:(...)
Quanto à perca potencial de 40%, e sobre a dificuldade menor ou maior de lidar com ela, isso resolve-se através da percentagem de capital alocada a esse investimento.

Pois 40% sobre 100% do capital seria gravissimo, mas 40% sobre 1% do mesmo capital não tem problema algum.
(...)


isso é verdade; contudo se se dimensionar a entrada de modo a que uma eventual perda de 40% não cause mossa, então também um ganho equivalente não acrescentará muito...
Avatar do Utilizador
 
Mensagens: 10503
Registado: 29/11/2007 12:50

por nunoand99 » 7/5/2012 14:22

Após tanto tempo sem passar por aqui, dou logo de caras com um titulo destes eheh

Mau titulo mas bom tópico ;)

Infelizmente (ou felizmente), não negoceio time frames de 1 hora, nem sou fã de stops, pelo que é melhor não me pronunciar sobre o assunto.

Quanto à perca potencial de 40%, e sobre a dificuldade menor ou maior de lidar com ela, isso resolve-se através da percentagem de capital alocada a esse investimento.

Pois 40% sobre 100% do capital seria gravissimo, mas 40% sobre 1% do mesmo capital não tem problema algum.

A questão da alavancagem resolve-se da mesma forma.

Um bem hajam.
 
Mensagens: 1344
Registado: 16/5/2005 21:38

por vdap » 7/5/2012 14:04

Caro Zeca,

essa é a verdadeira questão será que é possível aguentar com um corte de quase 40% na conta??? bem não é para todas as pessoas, e sinceramente acho que não sou uma delas.

Quanto à alavancangem.

Reparem que a alavancagem não é um factor de incremento no saldo final. O que conta no Money Management é o risco que se está sujeito em determinada altura do mercado, se em vez de 1000€ eu colocar lá 10000€ euros, passo a não estar alavancado, no entanto, utilizando na mesma os 1000 euros para negociação, porque os índices tem que se negociar em margem, o que ficam lá os outros 9000€ a fazer???

Uma pessoa alavancada 2x pode ter um risco muito maior que uma alavancada 5x. A questão aqui está no risco a que se está sujeito ao mercado em cada momento e não no nível de alavancagem.

Já aqui referi que utilizo stop, todas as ordens de compra e venda utilizam stop, pelo que sei sempre o risco que estou no mercado estando alavancado 10x ou 2x.

Como referi no primeiro post, para um drawdown de 33% teria que encurtar os stop para metade, mas o saldo no final é 2x menor.

Está aqui a faltar uma pergunta que ao fim de 14 post pensei que já a teriam feito.

Cumprimentos,
Avatar do Utilizador
 
Mensagens: 213
Registado: 29/11/2007 14:10
Localização: 12

por Zecatreca_1001 » 7/5/2012 13:40

Quando perguntei sobre a parte psicologica, referia-me ao pormenor de colocar la 1000euros e nao lhe mexeres durante 7meses.

A questão aqui é esta:

tens coragem para colocar 1000 eur e fazer um TUDO ou nada? :roll:

Também não reparei na alavancagem... :roll:
Avatar do Utilizador
 
Mensagens: 5593
Registado: 29/11/2007 10:54
Localização: Aveiro

por JCS » 7/5/2012 13:07

Quico Escreveu:É o Metatrader, JCS.


Obrigado a todos.
---Tudo o que for por mim escrito expressa apenas a minha opinião pessoal e não é uma recomendação de investimento de qualquer tipo---
https://twitter.com/JCSTrendTrading
"We can confidently predict yesterdays price. Everything else is unknown."
"Every trade is a test"
"Price is the aggregation of everyone's expectations"
"I don't define a good trade as a trade that makes money. I define a good trade as a trade where I did the right thing". (Trend Follower Kevin Bruce, $5000 to $100.000.000 in 25 years).
Avatar do Utilizador
 
Mensagens: 4582
Registado: 15/7/2003 14:59
Localização: Lisboa

por vdap » 7/5/2012 13:00

Billy Ray Valentine Escreveu:
JCS Escreveu:Zeca, apenas perguntei o nome do software de teste... Quanto ao resto que referes nem me pronunciei.

JCS


Ola , o software é o metatrader, que é a plataforma mais utilizada nos brokers de divisas (forex)

A qualidade de backtest que apresentas é baixa....eu aconselhava-te a tentar chegar no minimo ao 90 % de qualidade.

http://4xtrader.net/mt4-back-testing-modeling-quality/

Abraço


Boa tarde, obrigado pelas respostas

Caro Zeca,
Não entendi a parte da psicologia, mas tentando responder, o programa faz tudo automaticamente, ou seja fazes play e passado 2/4/12 meses fazes stop... não existem nenhuma intervenção humana, em nenhum período.

Sim o programa já se encontra a correr, mas numa conta demo, por enquanto.

Caro Billy Ray Valentine,

Tem razão quanto à qualidade de modelamento, mas enfim é o que se consegue. O site que sugeriu não tem o histórico do DAX, já andei também a revirar a WEB e não consigo o histórico para o DAX apenas para Forex.

Mas já tinha testado com uma qualidade de modelamento de 90% o teste está abaixo, tive foi que encurtar o período de teste desde Fevereiro a Abril apenas 3 meses e repare que o programa faz 3 vezes mais o saldo inicial.

Lucro liquido: 2964€, saldo final 3964€.

Caro xzx,

Não sei se entendi a sua questão, o software é o MetaTrader e o programa em questão implementado por mim.

Caro PAINKILLER,

Não entendi a sua Observação, partilhe lá os seus conhecimentos e explique porque este é um bom setup para limpar uma conta, afinal estamos aqui todos para aprender?

Se a razão é:
Por arriscar 5% do saldo da conta consoante a volatilidade do mercado? Bem já deixei claro que 5% é o máximo e o mercado teria que estar uma pasmaceira, o que no DAX é muito difícil de acontecer.

Quero chamar a atenção que os ganhos são em média 7x mais que as perdas, repare no backtest uma linha.

Fico a aguardar mais sugestões e opiniões.

Cumprimentos,
Anexos
Sistema D.png
Sistema D.png (119.88 KiB) Visualizado 5136 vezes
Avatar do Utilizador
 
Mensagens: 213
Registado: 29/11/2007 14:10
Localização: 12

por tonirai » 7/5/2012 12:40

Billy Ray Valentine Escreveu:Ola , o software é o metatrader, que é a plataforma mais utilizada nos brokers de divisas (forex)

A qualidade de backtest que apresentas é baixa....eu aconselhava-te a tentar chegar no minimo ao 90 % de qualidade.

http://4xtrader.net/mt4-back-testing-modeling-quality/

Abraço

Exacto. Aqueles 21 "Mismatched chart error" baixam logo imenso a qualidade, e podem ser responsáveis por empolar muito o resultado.

Não sei se está a ser usado o Model de "every tick" (este MT está em português, não estou habituado), que é o mais preciso (e os outros nem se adaptam a todos os tipos de entradas/saídas).

No tempo em que eu corria simulações de sistemas que eu criava ou melhorava, exclusivamente em Forex, não usava os dados (ticks) carregados automaticamente pela corretora - importava as databases da Metaquotes, pois só assim se conseguia ter a qualidade necessária, sem "Mismatched chart error" e com 100% na barra de qualidade.

Já não me lembro dos procedimentos e locais onde ir buscar tudo isso (nem sei se existe o equivalente para dados de Índices), mas a net tinha muitos tutoriais sobre como aumentar a qualidade dos dados e da modelação/simulação.

Edit:
Não tinha reparado que o post que citei tinha um link a falar precisamente disso. Haverá muitos outros, em foruns, etc.
Avatar do Utilizador
 
Mensagens: 1985
Registado: 19/4/2007 18:26
Localização: Cronologicamente... Paris/Resende/Gaia

Próximo

Quem está ligado:
Utilizadores a ver este Fórum: afcapitao, Google [Bot] e 208 visitantes