#ПисДіл #PeaceDeal 
📦 JavaScript (Node.js / Browser)
Скопировать код
Js
/**
* Нейтральный крипто-сигнальный движок
* Активы: BTC, ETH, BNB
* Факторы: Технические + Геополитический риск (модификатор волатильности)
* Автор: ИИ-синтезированный (нейтральный, не политический)
*/
// -------------------- КОНФИГУРАЦИЯ --------------------
const ASSETS = ["BTC", "ETH", "BNB"];
// Коэффициенты регионального риска (0 = нет риска, 1 = экстремальный)
// Редактируемые, нейтральные входные данные
const GEO_RISK = {
Украина: 0.85,
Израиль: 0.75,
Китай: 0.65,
Россия: 0.80,
Индия: 0.45,
Иран: 0.70
};
// Влияние веса на волатильность
const GEO_WEIGHT = 0.25;
// Технические пороги
const RSI_BUY = 30;
const RSI_SELL = 70;
// -------------------- HELPERS --------------------
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 "КУПИТЬ";
}
if (rsi > RSI_SELL || volatility > 0.12) {
return "ПРОДАТЬ";
}
return "ДЕРЖАТЬ";
}
// -------------------- CORE LOGIC --------------------
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()
};
}
// -------------------- DEMO DATA --------------------
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 }
};
// -------------------- RUN --------------------
ASSETS.forEach(asset => {
const result = analyzeAsset(asset, sampleMarketFeed[asset]);
console.log(result);
});$BTC

#start 20:31 киев
#finishcryptomarket 20:46 лондон 📦 JavaScript (Node.js / Browser)
Копировать код
Js
/**
* Нейтральный криптосигнальный движок
* Активы: BTC, ETH, BNB
* Факторы: Технические + Геополитический риск (модификатор волатильности)
* Автор: AI-синтезированный (нейтральный, неполитический)
*/
// -------------------- CONFIG --------------------
const ASSETS = ["BTC", "ETH", "BNB"];
// Региональные коэффициенты риска (0 = без риска, 1 = крайний)
// Редактируемые, нейтральные входные данные
const GEO_RISK = {
Украина: 0.85,
Израиль: 0.75,
Китай: 0.65,
Россия: 0.80,
Индия: 0.45,
Иран: 0.70
};
// Влияние веса на волатильность
const GEO_WEIGHT = 0.25;
// Технические пороги
const RSI_BUY = 30;
const RSI_SELL = 70;
// -------------------- HELPERS --------------------
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 "КУПИТЬ";
}
if (rsi > RSI_SELL || volatility > 0.12) {
return "ПРОДАТЬ";
}
return "ДЕРЖАТЬ";
}
// -------------------- CORE LOGIC --------------------
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()
};
}
// -------------------- DEMO DATA --------------------
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 }
};
// -------------------- RUN --------------------
ASSETS.forEach(asset => {
const result = analyzeAsset(asset, sampleMarketFeed[asset]);
console.log(result);
});