#ПисДіл #PeaceDeal

📦 JavaScript (Node.js / Browser)

Copia codice

Js

/**

* Motore di Segnale Crypto Neutro

* Risorse: BTC, ETH, BNB

* Fattori: Tecnici + Rischio Geopolitico (modificatore di volatilità)

* Autore: AI-sintetizzato (neutro, non politico)

*/

// -------------------- CONFIG --------------------

const ASSETS = ["BTC", "ETH", "BNB"];

// Coefficienti di rischio regionale (0 = nessun rischio, 1 = estremo)

// Dati di input modificabili, neutrali

const GEO_RISK = {

Ucraina: 0.85,

Israele: 0.75,

Cina: 0.65,

Russia: 0.80,

India: 0.45,

Iran: 0.70

};

// Influenza del peso sulla volatilità

const GEO_WEIGHT = 0.25;

// Soglie tecniche

const RSI_BUY = 30;

const RSI_SELL = 70;

// -------------------- FUNZIONI AUSILIARIE --------------------

function calculateAverageRisk(riskMap) {

const values = Object.values(riskMap);

return values.reduce((a, b) => a + b, 0) / values.length;

}

function adjustVolatility(baseVolatility, geoRisk) {

return baseVolatility (1 + geoRisk GEO_WEIGHT);

}

function decisionEngine({ priceChange, rsi, volatility }) {

if (rsi < RSI_BUY && priceChange < 0 && volatility < 0.08) {

return "COMPRA";

}

if (rsi > RSI_SELL || volatility > 0.12) {

return "VENDI";

}

return "Tieni";

}

// -------------------- LOGICA PRINCIPALE --------------------

function analyzeAsset(asset, marketData) {

const geoRiskAvg = calculateAverageRisk(GEO_RISK);

const adjVolatility = adjustVolatility(

marketData.volatility,

geoRiskAvg

);

const decision = decisionEngine({

priceChange: marketData.priceChange,

rsi: marketData.rsi,

volatility: adjVolatility

});

return {

asset,

decision,

price: marketData.price,

rsi: marketData.rsi,

volatility: adjVolatility.toFixed(4),

geoRiskIndex: geoRiskAvg.toFixed(2),

timestamp: new Date().toISOString()

};

}

// -------------------- DATI DIMOSTRATIVI --------------------

const sampleMarketFeed = {

BTC: { price: 43500, priceChange: -1.2, rsi: 28, volatility: 0.06 },

ETH: { price: 2350, priceChange: 0.4, rsi: 55, volatility: 0.07 },

BNB: { price: 310, priceChange: 2.1, rsi: 74, volatility: 0.09 }

};

// -------------------- ESEGUI --------------------

ASSETS.forEach(asset => {

const result = analyzeAsset(asset, sampleMarketFeed[asset]);

console.log(result);

});$BTC

BTC
BTCUSDT
95,074.1
-0.19%

#start 20:31 kiyv

#finishcryptomarket 20:46 londra 📦 JavaScript (Node.js / Browser)

Copia codice

Js

/**

* Motore di segnali crypto neutro

* Attività: BTC, ETH, BNB

* Fattori: Tecnici + Rischio Geopolitico (modificatore di volatilità)

* Autore: AI-sintetizzato (neutro, non politico)

*/

// -------------------- CONFIGURAZIONE --------------------

const ASSETS = ["BTC", "ETH", "BNB"];

// Coefficienti di rischio regionale (0 = nessun rischio, 1 = estremo)

// Dati di input neutri e modificabili

const GEO_RISK = {

Ucraina: 0.85,

Israele: 0.75,

Cina: 0.65,

Russia: 0.80,

India: 0.45,

Iran: 0.70

};

// Influenza del peso sulla volatilità

const GEO_WEIGHT = 0.25;

// Soglie tecniche

const RSI_BUY = 30;

const RSI_SELL = 70;

// -------------------- FUNZIONI AUSILIARIE --------------------

function calculateAverageRisk(riskMap) {

const values = Object.values(riskMap);

return values.reduce((a, b) => a + b, 0) / values.length;

}

function adjustVolatility(baseVolatility, geoRisk) {

return baseVolatility (1 + geoRisk GEO_WEIGHT);

}

function decisionEngine({ priceChange, rsi, volatility }) {

if (rsi < RSI_BUY && priceChange < 0 && volatility < 0.08) {

return "COMPRA";

}

if (rsi > RSI_SELL || volatility > 0.12) {

return "VENDI";

}

return "Tieni";

}

// -------------------- LOGICA PRINCIPALE --------------------

function analyzeAsset(asset, marketData) {

const geoRiskAvg = calculateAverageRisk(GEO_RISK);

const adjVolatility = adjustVolatility(

marketData.volatility,

geoRiskAvg

);

const decision = decisionEngine({

priceChange: marketData.priceChange,

rsi: marketData.rsi,

volatility: adjVolatility

});

return {

asset,

decision,

price: marketData.price,

rsi: marketData.rsi,

volatility: adjVolatility.toFixed(4),

geoRiskIndex: geoRiskAvg.toFixed(2),

timestamp: new Date().toISOString()

};

}

// -------------------- DATI DIMOSTRATIVI --------------------

const sampleMarketFeed = {

BTC: { price: 43500, priceChange: -1.2, rsi: 28, volatility: 0.06 },

ETH: { price: 2350, priceChange: 0.4, rsi: 55, volatility: 0.07 },

BNB: { price: 310, priceChange: 2.1, rsi: 74, volatility: 0.09 }

};

// -------------------- ESEGUI --------------------

ASSETS.forEach(asset => {

const result = analyzeAsset(asset, sampleMarketFeed[asset]);

console.log(result);

});