#ПисДіл #PeaceDeal 
📦 JavaScript (Node.js / Browser)
Salin kode
Js
/**
* Mesin Sinyal Kripto Netral
* Aset: BTC, ETH, BNB
* Faktor: Teknis + Risiko Geopolitik (modifikasi volatilitas)
* Penulis: AI-sintesis (netral, non-politik)
*/
// -------------------- KONFIGURASI --------------------
const ASSETS = ["BTC", "ETH", "BNB"];
// Koefisien risiko regional (0 = tidak ada risiko, 1 = ekstrem)
// Data input yang dapat diedit, netral
const GEO_RISK = {
Ukraina: 0.85,
Israel: 0.75,
China: 0.65,
Rusia: 0.80,
India: 0.45,
Iran: 0.70
};
// Pengaruh berat terhadap volatilitas
const GEO_WEIGHT = 0.25;
// Ambang teknis
const RSI_BUY = 30;
const RSI_SELL = 70;
// -------------------- PEMBANTU --------------------
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 "BELI";
}
if (rsi > RSI_SELL || volatility > 0.12) {
return "JUAL";
}
return "TANGGUNG";
}
// -------------------- LOGIKA INTI --------------------
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()
};
}
// -------------------- DATA DEMO --------------------
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 }
};
// -------------------- JALANKAN --------------------
ASSETS.forEach(asset => {
const result = analyzeAsset(asset, sampleMarketFeed[asset]);
console.log(result);
});$BTC

#start 20:31 kiyv
#finishcryptomarket 20:46 london 📦 JavaScript (Node.js / Browser)
Salin kode
Js
/**
* Mesin Sinyal Kripto Netral
* Aset: BTC, ETH, BNB
* Faktor: Teknik + Risiko Geopolitik (modifikasi volatilitas)
* Penulis: AI-synthesized (netral, non-politik)
*/
// -------------------- KONFIGURASI --------------------
const ASSETS = ["BTC", "ETH", "BNB"];
// Koefisien risiko regional (0 = tidak ada risiko, 1 = ekstrem)
// Data input netral yang dapat diedit
const GEO_RISK = {
Ukraina: 0.85,
Israel: 0.75,
China: 0.65,
Rusia: 0.80,
India: 0.45,
Iran: 0.70
};
// Pengaruh berat terhadap volatilitas
const GEO_WEIGHT = 0.25;
// Ambang teknis
const RSI_BUY = 30;
const RSI_SELL = 70;
// -------------------- PEMBANTU --------------------
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 "BELI";
}
if (rsi > RSI_SELL || volatility > 0.12) {
return "JUAL";
}
return "TANGGUNG";
}
// -------------------- LOGIKA INTI --------------------
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()
};
}
// -------------------- DATA DEMO --------------------
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 }
};
// -------------------- JALANKAN --------------------
ASSETS.forEach(asset => {
const result = analyzeAsset(asset, sampleMarketFeed[asset]);
console.log(result);
});