Maison > développement back-end > tutoriel php > 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

王林
Libérer: 2023-12-17 18:56:02
original
1626 Les gens l'ont consulté

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],
    // 更多股票数据...
];
Copier après la connexion

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);
Copier après la connexion

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);
Copier après la connexion

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);
    }
}
Copier après la connexion

Enfin, nous enregistrons l'image dans un fichier.

imagepng($image, 'candlestick.png');
imagedestroy($image);
Copier après la connexion

À 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>
Copier après la connexion

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal