Crypto market
Bitcoin Getting Ready To Bounce AgainLooking good....looking good. Bitcoin is setting up one last time to test and try to break res line of $87600 . Within the next 12 1hr candles (if not sooner) it should start moving UP. It would be nice to see it drop fast to get rid off all those Long stop loss in the GETTEX:82K area then bounce quickly to pick the power needed to go and break the $87600 res line. After that move is printed and tested the $87600 res line it will pullback and if it doesn't print a new lower low then the new Daily and Weekly uptrend direction will be confirmed. Buckle up ladies and gentlemen we are heading for another wild ride.
4444// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at mozilla.org
// Join us t.me
//@version=5
indicator(title='Osc+ ST+sqzmom',overlay=false,max_lines_count = 100)
n1 = input(10, 'Channel Length')
n2 = input(21, 'Average Length')
obLevel1 = input(60, 'Over Bought Level 1')
obLevel2 = input(53, 'Over Bought Level 2')
osLevel1 = input(-60, 'Over Sold Level 1')
osLevel2 = input(-53, 'Over Sold Level 2')
ap = hlc3
esa = ta.ema(ap, n1)
d = ta.ema(math.abs(ap - esa), n1)
ci = (ap - esa) / (0.015 * d)
tci = ta.ema(ci, n2)
wt1 = tci
wt2 = ta.sma(wt1, 4)
plot(0, color=color.new(color.gray, 0))
ob1 = plot(obLevel1, color=color.new(color.maroon, 90))
os1 = plot(osLevel1, color=color.new(color.aqua, 90))
ob2 = plot(obLevel2, color=color.new(color.maroon, 90))
os2 = plot(osLevel2, color=color.new(color.aqua, 90))
p1 = plot(wt1, color=color.new(color.aqua, 0))
p2 = plot(wt2, color=color.new(color.maroon, 0))
plot(wt1 - wt2, color=wt2 - wt1 > 0 ? color.new(color.maroon, 50) : color.new(color.aqua, 50), style=plot.style_histogram)
plot(ta.cross(wt1, wt2) ? wt2 : na, color=color.new(color.black, 0), style=plot.style_circles, linewidth=3)
plot(ta.cross(wt1, wt2) ? wt2 : na, color=wt2 - wt1 > 0 ? color.maroon : color.aqua, style=plot.style_circles, linewidth=2)
fill(p1,p2,color = wt2 - wt1 > 0 ? color.new(color.red, 50) : color.new(color.aqua, 50))
fill(ob1,ob2,color = color.new(color.maroon, 20))
fill(os1,os2,color = color.new(color.aqua, 20))
////////////////////////////////////////////////////////////////////
// Supertrend Inputs
atrPeriod = input.int(10, 'ATR Length', minval = 1)
factor = input.float(2.5, 'Factor', minval = 0.01, step = 0.01)
// Squeeze Momentum Indicator Inputs
source = input(close, 'Source')
bbLength = input.int(20, 'Bollinger Bands Length', minval = 1)
bbMult = input.float(2, 'Bollinger Bands MultFactor', step = 0.25)
kcLength = input(20, 'Keltner\'s Channel Length')
kcMult = input.float(1.5, 'Keltner\'s Channel MultFactor', step = 0.25)
useTrueRange = input(true, 'Use TrueRange (Keltner\'s Channel)')
signalLength = input(5, 'Signal Length')
tooltip_sqz = 'The Squeeze Indicator measures the relationship between Bollinger Bands and Keltner\'s Channels to help identify consolidations and signal when prices are likely to break out (whether up or down). ' + 'The Squeeze Indicator finds sections of the Bollinger Bands which fall inside the Keltner\'s Channels and in this case the market is said to be in a squeeze (indicator turns off, displayed with grey diamond shapes in this study). ' + 'When the volatility increases, so does the distance between the bands, conversely, when the volatility declines, the distance also decreases and in such cases the squeeze is said to be released (indicator turns on, displayed with triangle up or triangle down shapes)'
components = input.bool(false, 'Components of the Squeeze Indicator', tooltip = tooltip_sqz)
// Customizable thresholds
lowerThreshold = input(-1.0, title = 'Lower Threshold')
upperThreshold = input(1.0, title = 'Upper Threshold')
// Hardcoded tp + sl multipliers
targetMultiplier1 = 1
targetMultiplier2 = 2
targetMultiplier3 = 3
stopLossMultiplier = 3
// Input switches for alerts
alertTrendChange = input.bool(true, title='Enable Trend Change Alert')
// Calculate Supertrend
= ta.supertrend(factor, atrPeriod)
// Plot the Supertrend line
plot(supertrend, color = direction < 0 ? color.green : color.red, title = 'ST', style = plot.style_stepline_diamond,force_overlay=true)
// Determine if the trend is up or down
upTrend = direction < 0
downTrend = direction > 0
// Track previous trend state
var int previousDirection = na
previousDirection := upTrend ? 1 : -1
// Calculate ATR for targets and stop loss
atrValue = ta.atr(atrPeriod)
// Initialize target and stop loss levels
var float entryPrice = na
var float targetLevel1 = na
var float targetLevel2 = na
var float targetLevel3 = na
var float stopLossLevel = na
// Initialize counters for lines and labels
var int count_up = 0
var int count_down = 0
// Initialize a new variable to track if new lines and labels are drawn
var bool newLinesDrawn = false
// Calculate target and stop loss levels
if upTrend
entryPrice := close
targetLevel1 := close + atrValue * targetMultiplier1
targetLevel2 := close + atrValue * targetMultiplier2
targetLevel3 := close + atrValue * targetMultiplier3
stopLossLevel := close - atrValue * stopLossMultiplier
count_up := count_up + 1
count_down := 0
else if downTrend
entryPrice := close
targetLevel1 := close - atrValue * targetMultiplier1
targetLevel2 := close - atrValue * targetMultiplier2
targetLevel3 := close - atrValue * targetMultiplier3
stopLossLevel := close + atrValue * stopLossMultiplier
count_down := count_down + 1
count_up := 0
// Calculate BB
basis = ta.sma(source, bbLength)
dev = kcMult * ta.stdev(source, bbLength)
bbUpper = basis + dev
bbLower = basis - dev
// Calculate KC
ma = ta.sma(source, kcLength)
trRange = useTrueRange ? ta.tr : high - low
rangema = ta.sma(trRange, kcLength)
kcUpper = ma + rangema * kcMult
kcLower = ma - rangema * kcMult
sqzOn = bbLower > kcLower and bbUpper < kcUpper
sqzOff = bbLower < kcLower and bbUpper > kcUpper
noSqz = sqzOn == false and sqzOff == false
val = ta.linreg(source - math.avg(math.avg(ta.highest(high, kcLength), ta.lowest(low, kcLength)), ta.sma(source, kcLength)), kcLength, 0)
signal = ta.sma(val, signalLength)
dir = val // - signal
// Plotting Squeeze Momentum Indicator
segitigaUp = sqzOff and dir > dir and dir >= upperThreshold
segitigaDown = sqzOff and dir < dir and dir <= lowerThreshold
plotshape(sqzOn or noSqz ? true : false, 'In Squeeze', shape.square, location.top, color.new(color.black, 0), show_last = 500,force_overlay=true)
plotshape(segitigaUp ? true : false, 'Squeeze Release UpTrend', shape.triangleup, location.top, color.new(color.green, 0), show_last = 500,force_overlay=true)
plotshape(segitigaDown ? true : false, 'Squeeze Release DownTrend', shape.triangledown, location.top, color.new(color.red, 0), show_last = 500,force_overlay=true)
// Draw lines and labels for targets and stop loss
var line stopLossLine = na
var line entryLine = na
var line targetLine1 = na
var line targetLine2 = na
var line targetLine3 = na
var label stopLossLabel = na
var label entryLabel = na
var label targetLabel1 = na
var label targetLabel2 = na
var label targetLabel3 = na
// Clear previous lines and labels if a new trend is confirmed
if upTrend and count_up == 1
// Clear previous lines and labels
line.delete(stopLossLine)
line.delete(entryLine)
line.delete(targetLine1)
line.delete(targetLine2)
line.delete(targetLine3)
label.delete(stopLossLabel)
label.delete(entryLabel)
label.delete(targetLabel1)
label.delete(targetLabel2)
label.delete(targetLabel3)
// Draw new lines 5 bars into the future
stopLossLine := line.new(bar_index, stopLossLevel, last_bar_index + 5, stopLossLevel, color = color.red, width = 2,force_overlay=true)
entryLine := line.new(bar_index, close, last_bar_index + 5, close, color = color.green, width = 2,force_overlay=true)
targetLine1 := line.new(bar_index, targetLevel1, last_bar_index + 5, targetLevel1, color = color.blue, width = 2,force_overlay=true)
targetLine2 := line.new(bar_index, targetLevel2, last_bar_index + 5, targetLevel2, color = color.blue, width = 2,force_overlay=true)
targetLine3 := line.new(bar_index, targetLevel3, last_bar_index + 5, targetLevel3, color = color.blue, width = 2,force_overlay=true)
// Set the newLinesDrawn flag to true
newLinesDrawn := true
// Draw new labels with three decimal places
stopLossLabel := label.new(last_bar_index + 5, stopLossLevel, 'Stop Loss: ' + str.tostring(stopLossLevel, '#.###'), style = label.style_label_left, color = color.red, textcolor = color.white,force_overlay=true)
entryLabel := label.new(last_bar_index + 5, close, 'Entry: ' + str.tostring(close, '#.###'), style = label.style_label_left, color = color.green, textcolor = color.white,force_overlay=true)
targetLabel1 := label.new(last_bar_index + 5, targetLevel1, 'Target 1: ' + str.tostring(targetLevel1, '#.###'), style = label.style_label_left, color = color.blue, textcolor = color.white,force_overlay=true)
targetLabel2 := label.new(last_bar_index + 5, targetLevel2, 'Target 2: ' + str.tostring(targetLevel2, '#.###'), style = label.style_label_left, color = color.blue, textcolor = color.white,force_overlay=true)
targetLabel3 := label.new(last_bar_index + 5, targetLevel3, 'Target 3: ' + str.tostring(targetLevel3, '#.###'), style = label.style_label_left, color = color.blue, textcolor = color.white,force_overlay=true)
if downTrend and count_down == 1
// Clear previous lines and labels
line.delete(stopLossLine)
line.delete(entryLine)
line.delete(targetLine1)
line.delete(targetLine2)
line.delete(targetLine3)
label.delete(stopLossLabel)
label.delete(entryLabel)
label.delete(targetLabel1)
label.delete(targetLabel2)
label.delete(targetLabel3)
// Draw new lines 5 bars into the future
stopLossLine := line.new(bar_index, stopLossLevel, last_bar_index + 5, stopLossLevel, color = color.red, width = 2,force_overlay=true)
entryLine := line.new(bar_index, close, last_bar_index + 5, close, color = color.green, width = 2,force_overlay=true)
targetLine1 := line.new(bar_index, targetLevel1, last_bar_index + 5, targetLevel1, color = color.blue, width = 2,force_overlay=true)
targetLine2 := line.new(bar_index, targetLevel2, last_bar_index + 5, targetLevel2, color = color.blue, width = 2,force_overlay=true)
targetLine3 := line.new(bar_index, targetLevel3, last_bar_index + 5, targetLevel3, color = color.blue, width = 2,force_overlay=true)
// Set the newLinesDrawn flag to true
newLinesDrawn := true
// Draw new labels with three decimal places
stopLossLabel := label.new(last_bar_index + 5, stopLossLevel, 'SL: ' + str.tostring(stopLossLevel, '#.###'), style = label.style_label_left, color = color.red, textcolor = color.white,force_overlay=true)
entryLabel := label.new(last_bar_index + 5, close, 'Entry: ' + str.tostring(close, '#.###'), style = label.style_label_left, color = color.green, textcolor = color.white,force_overlay=true)
targetLabel1 := label.new(last_bar_index + 5, targetLevel1, 'TP 1: ' + str.tostring(targetLevel1, '#.###'), style = label.style_label_left, color = color.blue, textcolor = color.white,force_overlay=true)
targetLabel2 := label.new(last_bar_index + 5, targetLevel2, 'TP 2: ' + str.tostring(targetLevel2, '#.###'), style = label.style_label_left, color = color.blue, textcolor = color.white,force_overlay=true)
targetLabel3 := label.new(last_bar_index + 5, targetLevel3, 'TP 3: ' + str.tostring(targetLevel3, '#.###'), style = label.style_label_left, color = color.blue, textcolor = color.white,force_overlay=true)
// Trigger alert when squeeze is released
if sqzOff and not sqzOff // Only trigger alert if the squeeze was previously on
alert('Squeeze Release : '+ syminfo.tickerid + ' | ' + timeframe.period, alert.freq_once_per_bar)
if segitigaDown and not segitigaDown // Only trigger alert if the squeeze was previously on
alert('Weak Trend or Reverse : '+ syminfo.tickerid + ' | ' + timeframe.period, alert.freq_once_per_bar)
if segitigaUp and not segitigaUp // Only trigger alert if the squeeze was previously on
alert('Weak Trend or Reverse : '+ syminfo.tickerid + ' | ' + timeframe.period, alert.freq_once_per_bar)
// Plot momentum strength/direction
plotarrow(dir, 'Momentum Strength/Direction', color.new(color.aqua, 75), color.new(color.orange, 75), show_last = 500,force_overlay=true)
plot(components ? bbUpper : na, 'BBUpper', color.new(color.blue, 25), show_last = 500,force_overlay=true)
plot(components ? bbLower : na, 'BBLower', color.new(color.blue, 25), show_last = 500,force_overlay=true)
plot(components ? kcUpper : na, 'KCUpper', color.new(color.red, 25), show_last = 500,force_overlay=true)
plot(components ? kcLower : na, 'KCLower', color.new(color.red, 25), show_last = 500,force_overlay=true)
// Alert for trend change when new lines and labels are drawn
if newLinesDrawn
trendType = upTrend ? "Buy" : "Sell"
stopLossValue = str.tostring(stopLossLevel, '#.###')
entryValue = str.tostring(close, '#.###')
targetValue1 = str.tostring(targetLevel1, '#.###')
targetValue2 = str.tostring(targetLevel2, '#.###')
targetValue3 = str.tostring(targetLevel3, '#.###')
alertMessage = 'Pair : ' + syminfo.tickerid + ' | ' + timeframe.period + ' ' +
'Trend : ' + trendType + ' ' +
'SL : ' + stopLossValue + ' ' +
'Ent : ' + entryValue + ' ' +
'TP1 : ' + targetValue1 + ' ' +
'TP2 : ' + targetValue2 + ' ' +
'TP3 : ' + targetValue3
alert(alertMessage, alert.freq_once_per_bar_close)
// Reset the newLinesDrawn flag
newLinesDrawn := false
// ==========================================================================================
// === Dashboard with Telegram Link ===
var table myTable = table.new(position.top_center, 1, 1, border_width=1, frame_color=color.black, bgcolor=color.white)
// Add Telegram Message to Dashboard
//table.cell(myTable, 0, 0, "Join Telegram t.me bgcolor=color.blue, text_color=color.white, text_size=size.normal)
Dogecoin (DOGE): Seeing 35% of Downward Movement To HappenDogecoin is repeating the pattern of the fake "double bottom" pattern, where after a successful breakdown of the local support zone, we had a nice retest, which now should be followed by another deeper movement to lower zones.
More in-depth info is in the video—enjoy!
Swallow Academy
BTC 12Y trend line that indicates next bear market bottom.Back in december i was posting this idea, indicating bitcoin TOP
There is 12y RSI trend line on 2W time frame. After each RSI touch of this yellow line approx. in 400-680 days new bear market bottom formed.
Next bottom should be around Q1 2026 jan-feb-march.
UMB - time to bounce upUMB doing similar pattern as some other alts that already pushed up to previous highs (example XRP).
We did capitulation dip from accumulation range, are oversold and have longterm bullish divergence.
I expect soon bounce up into accumulation range where we need to form support base and then we can expect strong push up to break out of accumulation range. Target is ATH range, where I expect again consolidation - price can pull back from there to fibb 0.618 range.
Aki Network ($AKI) Breaks Out of A Falling Wedge Surging 20%Aki Network ( NSE:AKI ) broke out of a falling wedge pattern delivering 20% gains to traders and investors. The asset has being in a falling wedge for the past 7 days before delivering this massive gains.
While currently up 14.5% for the past 4 hours, NSE:AKI is gearing up for another legged up should it break above the resistant point as the altcoin's chart pattern is depicting a three white crow candle stick pattern- a pattern typically seen as a continuation of a current trend pattern.
With the RSI at 75, we might experience a respite before the continuation move as the general crypto market is consolidating. Similarly, with listings on top exchanges, NSE:AKI could deliver a massive gain if the hype on multichain tokens emerge.
What is Aki Network?
Aki Network emerges as a pioneering project within the web3 domain, aiming to restructure the way information is organized and accessed. At its core, the network introduces a dual-layered approach: the Aki Protocol and the Aki Network application suite.
Aki Network Price Live Data
The Aki Network price today is $0.015637 USD with a 24-hour trading volume of $15,320,266 USD. Aki Network is up 21.87% in the last 24 hours, with a market cap of $31,274,389 USD. It has a circulating supply of 2,000,000,000 AKI coins and a max. supply of 2,000,000,000 AKI coins.
UMA - Time to bounce upUMA created Head and Shoulders top in 2021 which triggered bigger correction. Correction is now complete - 1:1 meassured move to downside done.
We are in oversold range and have created longterm bullish divergence. Process of bottom formation can vary from asset to asset (see example Tara and Aioz) but eventually downward pressure is exhausted and we get backtest of highs.
I expect bounce up and once price breaks major diagonal resistance line (holding us back for over 4 years) we can expect move to speed up toward fibb 0.886 range (Nov 2021 pivot) where likely rejection and test of fibb 0.5 for support.
Ethereum, ridiculously oversold - $2.5k soon - April 16th, 2025Currently Without Worries has a higher timeframe “short” opened on Ethereum since $3800. It was not popular. (see idea below - By the way, 32 likes 2.7k views? You want me to keep posting or not?! Like to let me know otherwise off I go!)
Corrections in price action are never in a straight line, just as within a bull market. At this moment in time on the above 8 day chart price action has not been this oversold since the bear market of 2018 with an RSI below 30. The mindset of sellers today is 100% emotional.
What should you expect?
A rally to $2500, which is market structure. This rally will draw in fresh exit liquidity and no doubt invite a number of spiteful public comments “You’re wrong!”.
Regardless, the chart is our News, a rejection from market structure will take price action down to the long anticipated forecast area of circa $700 (see below) and confirm the expected bull trap.
Ww
Ethereum $3800 short idea
Ethereum to $700 idea
DOGEUSDT is BullishPrice was in a strong downtrend, however it seems that the accumulation phase has started, and with a double bottom printed alongside the bullish divergence, a bullish move is on the horizon. Wait for the break of previous lower high with volume as that would confirm bullish sentiment as per Dow theory. Targets are mentioned on the chart.
Bitcoin to $70K? My LSTM Model Thinks So📈 Bitcoin to $70K? My LSTM Model Thinks So 🚀
I've been working on an LSTM (Long Short-Term Memory) neural network designed to forecast Bitcoin prices, and the results are exciting. My model analyzes historical BTC data and learns temporal patterns to predict future movements. After extensive training and optimization, it reached an accuracy of around 96% on the training set.
🔍 How it works:
LSTM networks are especially powerful for time-series forecasting because they can capture long-term dependencies and trends in data. I trained my model using historical daily BTC prices, letting it learn the complex patterns and volatility that define crypto markets. The model takes sequences of past prices and uses that context to project the price movements of the next 30 days.
📊 The Forecast:
Based on the model's output, my current prediction is that Bitcoin will reach $70,000 within the next 30 days. This projection isn’t just a guess – it’s backed by a deep-learning model built to handle the chaotic nature of crypto.
⚠️ Note:
While the training accuracy is high, real-world conditions can differ, and models should always be taken as tools—not certainties. I’m sharing this analysis to contribute to the community and spark discussion.
Would love to hear your thoughts or see if others are seeing similar trends! 👇
#Bitcoin #BTC #CryptoAnalysis #MachineLearning #LSTM #BitcoinForecast #CryptoTrading
Filecoin (FIL): Break of Trend | Possible 1:2 RR TradeWe noticed a nice break of trend on Filecoin where sellers slowly took over the dominance, turning the market price over and resulting in a sweet break right there.
Now, after a recent stop hunt we had on the 4th of April, we have to be careful, as there might be similar movement happening (who knows), but overall we are aiming for that lower target zone as long as sellers maintain the dominance over the 100EMA line.
Swallow Academy
OTHERS Market Cap Monthly Candle close colours tells a Story
OTHERS - Top 125 coins MINUS top 10 by Market dominance.
OR The MID to LOW caps ALT coins.
The closeness of these Candles close colours tells a Story to me
There are only two months since 2017, where the count is not 6 to 5
Febusary has the biggest difference with a majority GREEN at 8 - 3
But that had little effect this cycle with the last 5 Months ( including this april) being RED
There is only ONE occasion that has happened before, and then went on to be 9 consecutive RED months and that was after the height of the ALT Season in 2017
The only positive I can offer here is that, After the RED March, April was Green on 3 occasions.
What we can take away from this is that the MID to LOW cap ALTS are NOT seasonal, it is a Hit an dMiss chance of taking the right coin at the right time and trading
You will also notice how the Actual Market Cap is currently LOWER than the height of the 2021
Infact, this is true for ALL the Market Caps EXCEPT TOTAL
This Very Clearly shows us all that it is BITCOIN that holds the market up and it is that Dominance that has Hurt ther ALTS so much.
Will this change ?
Tron (TRX): Bearish CME + Signs of WeaknessWe are seeing a possible downward movement to occur on Tron coin, where recently we have broken from that pattern of BOS on a bullish trend where we had a decent sell-off, which showed the dominance of sellers in that region.
As we are seeing a smaller bullish overtake now, we expect to see something like a "double top" pattern, where afterwards we want to see a break of the neckline/support, which then would result in a market structure break and give us a good entry for short.
Swallow Academy
#BTC reaches the support zone, beware of rebound📊#BTC reaches the support zone, beware of rebound📈
🧠From a structural perspective, we fell below the blue resistance zone and reached the stage support zone, so there is an expectation of rebound, but we fell below the inflection point of 83675, which means that the probability of our continuation of the bullish trend has decreased, and we are likely to fall below the inflection point of 82999. So what we need to focus on today is the shorting opportunity after the rebound reaches the overlapping resistance zone.
➡️New long opportunities need to pay attention to two supports around 81779 and 79689.
⚠️Note that we should not be too optimistic before we break through the blue resistance zone. I did not participate in the short trade of BTC because shorting ETH is more cost-effective, and it also quickly reached the target area today.
Let's take a look👀
🤜If you like my analysis, please like💖 and share💬
BITGET:BTCUSDT.P