Maison  >  Article  >  développement back-end  >  Outils essentiels pour l'analyse boursière : découvrez les étapes pour dessiner des graphiques en bougies avec PHP et JS

Outils essentiels pour l'analyse boursière : découvrez les étapes pour dessiner des graphiques en bougies avec PHP et JS

王林
王林original
2023-12-17 18:55:001543parcourir

Outils essentiels pour lanalyse boursière : découvrez les étapes pour dessiner des graphiques en bougies avec PHP et JS

Outils essentiels pour l'analyse boursière : découvrez les étapes pour dessiner des graphiques en bougies en PHP et JS, des exemples de code spécifiques sont nécessaires

Avec le développement rapide d'Internet et de la technologie, le trading d'actions est devenu l'un des moyens importants pour beaucoup investisseurs. L'analyse boursière est une partie importante de la prise de décision des investisseurs, et les graphiques en bougies sont largement utilisés dans l'analyse technique. Apprendre à dessiner des graphiques en bougies à l'aide de PHP et JS fournira aux investisseurs des informations plus intuitives pour les aider à prendre de meilleures décisions.

Un graphique en bougies est un graphique technique qui affiche les cours des actions sous la forme de bougies. Il montre les prix d'ouverture, de clôture, hauts et bas des cours des actions et identifie les tendances du marché grâce à des changements de couleur. Parmi eux, le rouge signifie que le cours des actions a baissé et le vert signifie que le cours des actions a augmenté. La méthode de dessin des graphiques en bougies est relativement simple. Il vous suffit de connaître le prix d'ouverture quotidien, le prix de clôture, le prix le plus élevé et le prix le plus bas.

Tout d’abord, nous devons préparer les données. Supposons que nous disposions d'un tableau de données boursières. Chaque élément du tableau contient des informations telles que la date, le prix d'ouverture, le prix de clôture, le prix le plus élevé et le prix le plus bas.

$stocks = [
    ['date' => '2021/01/01', 'open' => 100, 'close' => 120, 'high' => 130, 'low' => 90],
    ['date' => '2021/01/02', 'open' => 130, 'close' => 150, 'high' => 160, 'low' => 120],
    // 更多股票数据...
];

Ensuite, nous pouvons utiliser PHP pour dessiner des graphiques en chandeliers. PHP fournit de nombreuses bibliothèques graphiques pouvant être utilisées, telles que gd, ImageMagick, etc. Ici, nous utilisons la bibliothèque gd de PHP pour l'implémenter.

Tout d’abord, nous créons une toile vierge et définissons la largeur et la hauteur de la toile.

$width = 800;
$height = 400;
$image = imagecreatetruecolor($width, $height);

Ensuite, nous définissons quelques couleurs de base, comme le rouge et le vert, pour représenter la hausse et la baisse des cours boursiers.

$red = imagecolorallocate($image, 255, 0, 0);
$green = imagecolorallocate($image, 0, 255, 0);

Ensuite, nous parcourons le tableau de données boursières, calculons la position et la taille de chaque bougie et définissons la couleur en fonction de la hausse ou de la baisse du cours de l'action.

foreach ($stocks as $key => $stock) {
    $x = $key * ($width / count($stocks));
    $y1 = $height - ($stock['open'] - min($stock['low'], $stock['high'])) * ($height / (max($stock['high'], $stock['low']) - min($stock['low'], $stock['high'])));
    $y2 = $height - ($stock['close'] - min($stock['low'], $stock['high'])) * ($height / (max($stock['high'], $stock['low']) - min($stock['low'], $stock['high'])));
    $y3 = $height - ($stock['low'] - min($stock['low'], $stock['high'])) * ($height / (max($stock['high'], $stock['low']) - min($stock['low'], $stock['high'])));
    $y4 = $height - ($stock['high'] - min($stock['low'], $stock['high'])) * ($height / (max($stock['high'], $stock['low']) - min($stock['low'], $stock['high'])));

    if ($stock['close'] >= $stock['open']) {
        imagefilledrectangle($image, $x, $y2, $x + 10, $y1, $green);
        imageline($image, $x + 5, $y3, $x + 5, $y4, $green);
    } else {
        imagefilledrectangle($image, $x, $y1, $x + 10, $y2, $red);
        imageline($image, $x + 5, $y3, $x + 5, $y4, $red);
    }
}

Enfin, nous enregistrons l'image dans un fichier.

imagepng($image, 'candlestick.png');
imagedestroy($image);

À ce stade, nous avons réussi à dessiner le graphique en chandeliers. En exécutant le code ci-dessus, un fichier image nommé chandelier.png sera généré dans le répertoire courant, qui contient les résultats du dessin du graphique en bougies.

En plus de PHP, nous pouvons également utiliser JS pour dessiner des graphiques en bougies pour un affichage dynamique sur la page Web. Vous trouverez ci-dessous un exemple de code pour dessiner un graphique en bougies en utilisant HTML, CSS et JavaScript.

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Candlestick Chart</title>
    <style>
        #chart {
            width: 800px;
            height: 400px;
            border: 1px solid black;
        }
    </style>
</head>
<body>
    <div id="chart"></div>
    <script>
        var stocks = [
            {date: '2021/01/01', open: 100, close: 120, high: 130, low: 90},
            {date: '2021/01/02', open: 130, close: 150, high: 160, low: 120},
            // 更多股票数据...
        ];

        var chart = document.getElementById('chart');
        var ctx = chart.getContext('2d');
        var width = chart.width;
        var height = chart.height;

        stocks.forEach(function(stock, index) {
            var x = index * (width / stocks.length);
            var y1 = height - (stock.open - Math.min(stock.low, stock.high)) * (height / (Math.max(stock.high, stock.low) - Math.min(stock.low, stock.high)));
            var y2 = height - (stock.close - Math.min(stock.low, stock.high)) * (height / (Math.max(stock.high, stock.low) - Math.min(stock.low, stock.high)));
            var y3 = height - (stock.low - Math.min(stock.low, stock.high)) * (height / (Math.max(stock.high, stock.low) - Math.min(stock.low, stock.high)));
            var y4 = height - (stock.high - Math.min(stock.low, stock.high)) * (height / (Math.max(stock.high, stock.low) - Math.min(stock.low, stock.high)));

            if (stock.close >= stock.open) {
                ctx.fillStyle = 'green';
                ctx.fillRect(x, y2, 10, y1 - y2);
                ctx.strokeStyle = 'green';
                ctx.beginPath();
                ctx.moveTo(x + 5, y3);
                ctx.lineTo(x + 5, y4);
                ctx.stroke();
            } else {
                ctx.fillStyle = 'red';
                ctx.fillRect(x, y1, 10, y2 - y1);
                ctx.strokeStyle = 'red';
                ctx.beginPath();
                ctx.moveTo(x + 5, y3);
                ctx.lineTo(x + 5, y4);
                ctx.stroke();
            }
        });
    </script>
</body>
</html>

En ouvrant le code ci-dessus dans le navigateur, nous pouvons voir les résultats du graphique en bougies sur la page Web.

Pour résumer, maîtriser les étapes de création de graphiques en bougies à l'aide de PHP et JS est essentiel pour l'analyse boursière. En apprenant ces étapes, combinées à des exemples de code spécifiques, les investisseurs peuvent mieux comprendre et analyser les données boursières et améliorer la précision et l'efficacité de la prise de décision.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn