Php Mysql Trading System


Construindo um sistema de negociação E-mini usando consultas PHP e MySQL avançadas Este artigo mostra exemplos ilustrativos de como o PHP e algumas consultas avançadas do MySQL podem ser usadas para construir um sistema de comércio on-line. Por simplicidade, apresentaremos um dos índices de ações mais comuns: o índice S038P 500. Isso também é chamado futuros E-mini SampP 500. Um dos futuros de ações mais comumente negociados. A partir de setembro de 2009, não havia nenhum sistema de negociação atualmente na internet, alimentado por PHP e MySQL, apesar da popularidade da plataforma8217 entre as comunidades de código aberto. Um sistema de negociação é usado para entrar e sair de um comércio em um mercado de ações ou de futuros. Embora ao sair de um comércio para conquistar lucros e controlar as perdas, a gestão do dinheiro é uma ferramenta mais útil do que um sistema comercial. Para criar um sistema de negociação totalmente funcional, você precisa dos seguintes processos: Os dados brutos devem ser retirados de uma fonte confiável para os dados do índice SampP 500. Neste artigo, usaremos os dados do Yahoo Finance. O tipo de arquivo de exportação é principalmente. csv e Excel, então você primeiro precisa exportar os dados brutos para o banco de dados MySQL. (Veja detalhes abaixo) O coração do processo é o sistema comercial. É um método para analisar dados brutos e fazer julgamentos. Todo comerciante tem seu próprio sistema comercial para seguir, mas neste exemplo, usaremos as seguintes regras: Regra 1. Defina Delta como a diferença entre média móvel de 50 dias e 200 média móvel. Se o delta é positivo, indica uma tendência de alta, caso contrário, é baixa. Você pode ler mais sobre as médias móveis. Regra 2. Definir Força da tendência como Delta MA 200. Isso quantifica a força da tendência. Aplicar dados históricos (definir limites) para julgamento (o cálculo dos limites está fora do escopo para este tutorial). Isso é mais como uma confirmação de tendência. Use o PHP para exibir os dados em tabelas HTML enquanto usa consultas avançadas do MySQL (média de computação e obtenção de dados de índice) para fazer alguns cálculos da média móvel. Passo 1 . Baixe dados de índice SampP 500 crus do finance. yahoo q hps5EGSPC e formate a tabela do Excel para se parecer com a imagem abaixo (apague colunas desnecessárias, como volumes de negociação e adicione a nova entrada da coluna): Sua tabela MySQL deve ser semelhante à acima. No entanto, a captura de tela acima ainda está no formato. csv Etapa 2. Converta o. csv para. sql e faça upload para o seu servidor MySQL. Você pode ler um artigo que explica como converter sua planilha do Excel. Etapa 3 . It8217s tempo para escrever o script PHP. Primeiro, nos conectamos ao banco de dados usando o script abaixo: conecte-se ao mysql database username quotyour mysql usernamequot password quotyour mysql passwordquot hostname quotyour mysql hostnamequot database quotyour mysql databasequot dbhandle mysqlconnect (nome do host, nome de usuário, senha) ou die (quotUnable to connect to MySQLquot) selecione Um banco de dados para trabalhar ou morrer (não pode selecionar databasequot) Etapa 4. Para saber quantas linhas estão no banco de dados, que é um valor que será usado em nossa computação, vamos consultar o MySQL: conte o número de linhas no banco de dados, incluindo o resultado mais recente da entrada1 mysqlquery (quotSELECT FROM sp500quot) armazena o Registro da tabela quotexamplequot em row ou die (quotInvalid query: quot. Mysqlerror ()) Imprima o conteúdo da entrada. O número de instruções contém o número máximo de linhas na tabela MySQL (na captura de tela acima é 15020). Os dados na tabela MySQL serão organizados a partir das entradas mais recentes até as entradas antigas. Consulte a captura de tela acima. Os mysqlnumrows serão usados ​​para contar o número de linhas na tabela SP500. Passo 5. Calcule a última entrada a ser mostrada na tabela HTML. Uma vez que estaremos mostrando apenas as últimas 50 linhas, o seguinte será usado: lastentry numberofentries -50 1 Isso significa que, por exemplo, temos 15020 entradas na tabela, gostaríamos de mostrá-las a partir da Entrada 15020 para (15020- 501) ou Entrada 14971. Esse valor, bem como a entrada máxima acima, serão alterados conforme os dias de negociação passem. Passo 6. Faça uma consulta MySQL para extrair os últimos 50 dias de entradas. Result2 mysqlquery (quotSELECT FROM sp500 WHERE entrygt8217lastentry8217 E entrylt8217numberofentries8217 ORDER BY entry DESCquot) A parte complicada é classificar as consultas resultantes por ordem decrescente. Isso garantirá que os resultados de saída sejam classificados das entradas mais recentes para as mais antigas. Passo 7. Defina os limites para a média móvel de 200 dias e a média móvel de 50 dias: Definir limites para 200 dias de média móvel número mínimo de número de opções 8211 200 1 Definir limites para 50 dias de média móvel limite inferior 50 número de necessidades 8211 50 1 Passo 8. Defina a consulta MySQL para calcular a média móvel de 200 dias. Result3 mysqlquery (quotSELECT avg (fechar) de sp500 WHERE entrygt8217lowerlimit8217 E entrylt8217upperlimit8217quot) armazenam a gravação da tabela quotexamplequot em linha ou morre (quotInvalid query: quot. Mysqlerror ()) Imprima o conteúdo da entrada Passo 9. Defina a consulta MySQL para calcular a média móvel de 50 dias. Result4 mysqlquery (quotSELECT avg (fechar) de sp500 WHERE entrygt8217lowerlimit508242 AND entrylt8217upperlimit8217quot) armazena a gravação da tabela quotexamplequot em row or die (quotInvalid query: mysqlerror ()) Imprima o conteúdo da entrada Step 10. Atribua variáveis ​​e números redondos para uma exibição HTML mais fácil. Passo 11. Calcule DELTA e resultados redondos. Passo 12. Calcule RESULTADOS e resultados redondos. Passo 13. Crie o script PHP para fazer recomendações. Recomendação 8216 acima TENDÊNCIA DE BULL SATURADA (COMPRA DE RISCOS MUITO ALTO) 8217 elseif (z gt5.1 ampamp z lt8.5) recomendação 8216CONFIRMED BULL TREND (ALTA RESERVA DE RISCO) 8217 elseif (z gt2 ampamp z lt5) recomendação 8216CONFIRMED BULL TREND (BAIXA COMPRA DE RISCOS ) 8217 elseif (z gt0 ampamp z lt1.99) recomendação 8216UNCONFIRMED BULL TREND8217 elseif (z lt0 ampamp z gt-4.99) recomendação 8216 BEBÊ DE TRATAMENTO DEFENDIDO TREND8217 elseif (z lt-5 ampamp z gt-8) recomendação 8216 TENDÊNCIA DE URSO (BAIXO RISCO CURTO ) 8217 recomendação 8216 TENDÊNCIA DE URSOS ESTABILIZADOS (MUITO ALTO RISCO CURTO) 8217 Nota: os valores limiar foram retirados dos registros históricos do SampP. Esses cálculos estão fora do escopo deste tutorial. Passo 14. Combine todas as consultas acima e cálculos. Em seguida, imprima a uma tabela HTML usando um loop while: if (mysqlnumrows (result2) GT0) echo 8216lttable width100 cellpadding10 cellspacing10 border1gt8217 eco 8216lttable width100 border1gt8217 eco 8216lttrgtlttdgtltbgtEntrylt bgtlt tdgtlttdgtltbgtDatelt bgtlt tdgtlttdgtltbgtOpenlt bgt lt tdgtlttdgtltbgtHighlt bgtlt tdgtlttdgtltbgtLowlt bgtlt tdgtlttdgtltbgtCloselt bgtlt tdgt lttdgtltbgtMA200lt bgtlt tdgtlttdgtltbgtMA50lt bgtlt tdgtlttdgtltbgtDeltalt bgtlt tdgt lttdgtltbgtStrengthlt bgtlt tdgtlttdgtltbgtRecommendationlt bgtlt tdgtlt trgt8217 enquanto (row2 mysqlfetchrow (result2)) result3 mysqlquery (quotSELECT avg (fim) a partir de SP500 ONDE entrygt8217lowerlimit8217 e entrylt8217upperlimit8217quot) armazenar o registo da tabela de quotexamplequot em linha ou morrer (consulta quotInvalid:. quot mysqlerror () ) Imprima o conteúdo da entrada result4 mysqlquery (quotSELECT avg (fechar) de sp500 WHERE entrygt8217lowerlimit508242 AND entrylt8217upperlimit8217quot) armazena a gravação do quotexam Complete a tabela em linha ou morra (quotInvalid query: quot. Mysqlerror ()) Imprima o conteúdo da recomendação de entrada 8216 acima TENDÊNCIA DE BULL SATURADA (COMPRA DE RISCOS MUITO ALTO) 8217 elseif (z gt5.1 ampamp z lt8.5) recomendação 8216CONFIRMED BULL TREND (ALTA RISCO DE COMPRA) 8217 elseif (z gt2 ampamp Z lt5) recomendação 8216CONFIRMED BULL TREND (BAIXA COMPRA DE RISCOS) 8217 elseif (z gt0 ampamp z lt1.99) recomendação 8216UNCONFIRMED BULL TREND8217 elseif (z lt0 ampamp z gt-4.99) recomendação 8216UNCONFIRMED BEAR TREND8217 elseif (z lt-5 ampamp z gt -8) recomendação 8216 TENDÊNCIA DO URSO (BAIXO RISCO CURTO) 8217 recomendação 8216 TENDÊNCIA DE URSOS SATURADOS (CORRIENTE DE RISCO MUITO ALTO) 8217 Post navigationCurrent Stable PHP 7.1.0 (Changelog) php-7.1.0.tar. bz2 (sig) 15,412Kb 01 de dezembro 2016 54e364b60a88db77adb96aacb10f10a4 68bcfd7deed5b3474d81dec9f74d122058327e2bed0ac25bbc9ec70995228e61 php-7.1.0.tar. gz (SIG) 19,717Kb 01 dezembro de 2016 ec2218f97b4edbc35a2d7919ff37a662 9e84c5b13005c56374730edf534fe216f6a2e63792a9703d4b894e770bbccbae php-7.1.0.tar. xz (SIG) 12 , 494KB 01 de dezembro de 2016 cf36039303c47f493100afea522a8f53 a810b3f29c21407c24caa88f50649320d20ba6892ae1923132598b8a0ca145b6 de downloads do Windows Chaves GPG para PHP 7.1Old PHP estável 7.0.14 (Changelog) php-7.0.14.tar. bz2 (SIG) 14,882Kb 08 de dezembro de 2016 903ff1fd199201d7e69dc0963797072b fbc4369a0d42b55fd1ce75eb4f3d17b012da754a67567d8e3288fbfbb7490534 php-7.0.14.tar. gz (SIG) 19,018Kb 08 de dezembro de 2016 5e20062f39fb3bd5afeed916866acad9 320cfd2184e7252d3d77eae5d5474554fa04ab9fbee7c6094c07e8bd3b5b632b php-7.0.14.tar. xz (SIG) 12,241Kb 08 Dez 2016 a51f1d4f03f4e4c745856e9f76fca476 0f1dff6392a1cc2ed126b9695f580a2ed77eb09d2c23b41cabfb41e6f27a8c89 de downloads do Windows Chaves GPG para PHP 7.0Current PHP estável 5.6.29 (Changelog) php-5.6. 29.tar. bz2 (SIG) 14,640Kb 08 de dezembro de 2016 b2772a0bdada0e20f4e1937f71416bcc 499b844c8aa7be064c111692e51a093ba94e54d2d9abb01e70ea76183a1825bb php-5.6.29.tar. gz (SIG) 18,817Kb 08 de dezembro de 2016 826ae90570ad480ee4541d6a320b406a 0b1b939129a7286c5a474ac2cf845b979477f26dff36639e04022def9e252574 php-5.6.29.tar. x z (SIG) 12,153Kb 08 Dez 2016 190bf5b52d1fc68d5500a8cdc7e33164 0ff352a433f73e2c82b0d5b283b600402518569bf72a74e247f356dacbf322a7 de downloads do Windows Chaves GPG para PHP 5.6Old PHP estável 5.5.38 (Changelog) php-5.5.38.tar. bz2 (SIG) 13,380Kb 21 de julho de 2016 312244a0eecad602a1555ed2434e223f 473c81ebb2e48ca468caee031762266651843d7227c18a824add9b07b9393e38 php-5.5. 38.tar. gz (SIG) 17,369Kb 21 de julho de 2016 c2545f7164f8f8b2187fb404f11ceb35 4f458c9b504269615715a62f182b7c2f89bb8284f484befc221b56a1571b506e php-5.5.38.tar. xz (SIG) 10,818Kb 21 de julho de 2016 72302e26f153687e2ca922909f927443 cb527c44b48343c8557fe2446464ff1d4695155a95601083e5d1f175df95580f de downloads do Windows Chaves GPG para lançamentos PHP 5.5The são com etiquetas e assinado no PHP Repositório Git. As seguintes chaves oficiais do GnuPG do PHP Release Manager atual podem ser usadas para verificar as tags:

Comments

Popular posts from this blog

What Is Forex Market Mechanism Explain

Escolhendo A Trading System That Actually Works Pdf