Run it
Copy the script and paste it into your executor.
RS = :()
Players = :()
UIS = :()
player = Players.LocalPlayer
buyRemote, sellRemote, exchangeRemote, watchRemote
_, v (RS:())
v:()
v.Name == buyRemote buyRemote = v
v.Name == sellRemote sellRemote = v
v.Name == exchangeRemote exchangeRemote = v
v.Name == watchRemote watchRemote = v
targetIdRaw =
targetId =
pricePerShare =
buyCount =
sellCount =
cycles =
mode =
running =
lastSnapShares = {}
lastSnapPoints =
totalInvested =
totalReturned =
dataStore = {Shares = {}, Points = }
_, v (RS:())
v.Name == v:()
v.OnClientEvent:((data)
(data) ==
data.Shares dataStore.Shares = data.Shares
data.Points dataStore.Points = data.Points
)
(n)
n
n >= .(, n/)
n >= .(, n/)
n >= .(, n/)
n >= .(, n/)
n >= .(, n/)
.(, n)
() dataStore.Points
()
targetIdRaw
dataStore.Shares[targetIdRaw]
()
shares = {}
dataStore.Shares
k, v (dataStore.Shares) shares[k] = v
shares, dataStore.Points
(oldShares, oldPoints, newShares, newPoints)
pointsDiff = oldPoints - newPoints
candidates = {}
k, v (newShares)
oldVal = oldShares[k]
diff = v - oldVal
diff >
.(candidates, {
key = k, numId = (k) k,
oldShares = oldVal, newShares = v, diff = diff
})
pointsDiff > #candidates >
.(candidates, (a, b) a.diff < b.diff )
candidates[], candidates, pointsDiff
#candidates >
.(candidates, (a, b) a.diff < b.diff )
candidates[], candidates, pointsDiff
, {}, pointsDiff
(id)
watchRemote (() watchRemote:(id) ) ()
exchangeRemote (() exchangeRemote:(id) ) ()
gui = .()
gui.Name =
gui.ResetOnSpawn =
gui.ZIndexBehavior = .ZIndexBehavior.Sibling
frame = .()
frame.Size = .(, , , )
frame.Position = .(, , , -)
frame.BackgroundColor3 = .(, , )
frame.BorderSizePixel =
frame.Parent = gui
frameCorner = .()
frameCorner.CornerRadius = .(, )
frameCorner.Parent = frame
frameStroke = .()
frameStroke.Color = .(, , )
frameStroke.Thickness =
frameStroke.Parent = frame
header = .()
header.Size = .(, , , )
header.BackgroundColor3 = .(, , )
header.BorderSizePixel =
header.Parent = frame
headerCorner = .()
headerCorner.CornerRadius = .(, )
headerCorner.Parent = header
headerCover = .()
headerCover.Size = .(, , , )
headerCover.Position = .(, , , )
headerCover.BackgroundColor3 = .(, , )
headerCover.BorderSizePixel =
headerCover.Parent = header
title = .()
title.Size = .(, -, , )
title.Position = .(, , , )
title.BackgroundTransparency =
title.Text =
title.TextColor3 = .(, , )
title.TextXAlignment = .TextXAlignment.Left
title.Font = .Font.GothamBold; title.TextSize =
title.Parent = header
closeBtn = .()
closeBtn.Size = .(, , , )
closeBtn.Position = .(, -, , )
closeBtn.BackgroundColor3 = .(, , )
closeBtn.Text = ; closeBtn.TextColor3 = .(, , )
closeBtn.Font = .Font.GothamBold; closeBtn.TextSize =
closeBtn.BorderSizePixel =
closeBtn.Parent = header
closeCorner = .()
closeCorner.CornerRadius = .(, )
closeCorner.Parent = closeBtn
closeBtn.MouseButton1Click:(() running = ; gui:() )
statusDot = .()
statusDot.Size = .(, , , )
statusDot.Position = .(, , , )
statusDot.BackgroundColor3 = .(, , )
statusDot.BorderSizePixel =
statusDot.Parent = frame
dotCorner = .()
dotCorner.CornerRadius = .(, )
dotCorner.Parent = statusDot
lbl = {}
defs = {
{, , .(,,), },
{, , .(,,), },
{, , .(,,), },
{, , .(,,), },
{, , .(,,), },
{, , .(,,), },
{, , .(,,), },
{, , .(,,), },
{, , .(,,), },
{, , .(,,), },
{, , .(,,), },
}
i, d (defs)
l = .()
l.Size = .(, -, , )
i ==
l.Position = .(, , , )
l.Position = .(, , , + i * )
l.BackgroundTransparency =
l.Text = d[]; l.TextColor3 = d[]
l.TextXAlignment = .TextXAlignment.Left
l.Font = d[] .Font.GothamBold .Font.Gotham
l.TextSize =
l.Parent = frame; lbl[d[]] = l
keyBar = .()
keyBar.Size = .(, , , )
keyBar.Position = .(, , , -)
keyBar.BackgroundColor3 = .(, , )
keyBar.BorderSizePixel =
keyBar.Parent = frame
keyBarCorner = .()
keyBarCorner.CornerRadius = .(, )
keyBarCorner.Parent = keyBar
keyLabels = {
{, , .(,,)},
{, , .(,,)},
{, , .(,,)},
{, , .(,,)},
{, , .(,,)},
}
xOffset =
_, k (keyLabels)
keyText = .()
keyText.Size = .(, , , )
keyText.Position = .(, xOffset, , )
keyText.BackgroundTransparency =
keyText.Text = k[]; keyText.TextColor3 = k[]
keyText.Font = .Font.GothamBold; keyText.TextSize =
keyText.Parent = keyBar
valText = .()
valText.Size = .(, , , )
valText.Position = .(, xOffset + , , )
valText.BackgroundTransparency =
valText.Text = k[]; valText.TextColor3 = .(,,)
valText.Font = .Font.Gotham; valText.TextSize =
valText.Parent = keyBar
xOffset = xOffset +
credit = .()
credit.Size = .(, , , )
credit.Position = .(, , , -)
credit.BackgroundTransparency =
credit.Text =
credit.TextColor3 = .(, , )
credit.Font = .Font.Gotham; credit.TextSize =
credit.Parent = frame
dragging, dragStart, startPos
frame.InputBegan:((input)
input.UserInputType == .UserInputType.MouseButton1
dragging = ; dragStart = input.Position; startPos = frame.Position
)
frame.InputEnded:((input)
input.UserInputType == .UserInputType.MouseButton1 dragging =
)
UIS.InputChanged:((input)
dragging input.UserInputType == .UserInputType.MouseMovement
frame.Position = .(startPos.X.Scale, startPos.X.Offset + (input.Position.X - dragStart.X), startPos.Y.Scale, startPos.Y.Offset + (input.Position.Y - dragStart.Y))
)
gui.Parent = player:()
(()
running
colors = {
detecting = .(, , ),
confirming = .(, , ),
ready = .(, , ),
buying = .(, , ),
selling = .(, , ),
idle = .(, , ),
}
baseColor = colors[mode] .(, , )
i = ,
running
t = i /
r = .(baseColor.R * * ( + * t))
g = .(baseColor.G * * ( + * t))
b = .(baseColor.B * * ( + * t))
statusDot.BackgroundColor3 = .(r, g, b)
frameStroke.Color = .(r, g, b)
()
)
()
mText, mColor
mode == mText = ; mColor = .(,,)
mode == mText = ; mColor = .(,,)
mode == mText = ; mColor = .(,,)
mode == mText = ; mColor = .(,,)
mode == mText = ; mColor = .(,,)
mText = ; mColor = .(,,)
lbl.status.Text = mText; lbl.status.TextColor3 = mColor
lbl.stock.Text = .. (targetId (targetId) )
lbl.balance.Text = .. (())
lbl.shares.Text = .. ()
lbl.price.Text = .. (pricePerShare (pricePerShare) )
sharesHeld = ()
pricePerShare sharesHeld >
holdingsValue = sharesHeld * pricePerShare
lbl.value.Text = .. (holdingsValue) .. .. sharesHeld .. .. (pricePerShare) ..
profit = totalReturned + holdingsValue - totalInvested
profit >=
lbl.profit.Text = .. (profit)
lbl.profit.TextColor3 = .(, , )
lbl.profit.Text = .. (.(profit))
lbl.profit.TextColor3 = .(, , )
lbl.value.Text =
lbl.profit.Text =
lbl.profit.TextColor3 = .(, , )
lbl.buys.Text = .. buyCount .. .. sellCount
lbl.cycles.Text = .. cycles
(()
()
lastSnapShares, lastSnapPoints = ()
()
running mode ==
newShares, newPoints = ()
best, allChanges, ptsDiff = (lastSnapShares, lastSnapPoints, newShares, newPoints)
best
targetIdRaw = best.key
targetId = best.numId
confirmText = .. (targetId) .. .. best.diff ..
ptsDiff >
confirmText = confirmText .. .. (ptsDiff) ..
pricePerShare = ptsDiff / best.diff
confirmText = confirmText ..
#allChanges >
confirmText = confirmText ..
i, c (allChanges)
i <= c.key ~= best.key
confirmText = confirmText .. .. (c.numId) .. .. c.diff ..
lbl.confirm.Text = confirmText
mode =
()
mode ==
lastSnapShares, lastSnapPoints = newShares, newPoints
()
)
(()
running
mode == targetId
balBefore = ()
ok, result = (() buyRemote:(targetId, ) )
ok result ==
buyCount = buyCount +
balAfter = ()
paid = balBefore - balAfter
paid >
pricePerShare = paid
totalInvested = totalInvested + paid
lbl.lastResult.Text = .. buyCount .. .. (paid) ..
lbl.lastResult.TextColor3 = .(,,)
pricePerShare () < pricePerShare
currentShares = ()
currentShares >
mode =
lbl.lastResult.Text =
lbl.lastResult.TextColor3 = .(,,)
mode =
lbl.lastResult.Text =
lbl.lastResult.TextColor3 = .(,,)
errStr = ok
lbl.lastResult.Text = .. errStr ..
lbl.lastResult.TextColor3 = .(,,)
mode == targetId
currentShares = ()
currentShares <=
cycles = cycles +
mode =
lbl.lastResult.Text = .. cycles ..
lbl.lastResult.TextColor3 = .(,,)
sellQty = .(, .(currentShares * ))
balBefore = ()
ok, result = (() sellRemote:(targetId, sellQty) )
ok result ==
sellCount = sellCount +
balAfter = ()
gained = balAfter - balBefore
gained >
sellPrice = gained / sellQty
pricePerShare = sellPrice
totalReturned = totalReturned + gained
lbl.lastResult.Text = .. sellCount .. .. sellQty .. .. (gained) ..
lbl.lastResult.TextColor3 = .(,,)
errStr = ok
lbl.lastResult.Text = .. errStr ..
lbl.lastResult.TextColor3 = .(,,)
()
()
)
UIS.InputBegan:((input, gpe)
gpe
input.KeyCode == .KeyCode.Y mode ==
(targetId)
lbl.confirm.Text = .. (targetId)
lbl.confirm.TextColor3 = .(,,)
mode =
()
mode == (input.KeyCode == .KeyCode.N input.KeyCode == .KeyCode.H)
targetIdRaw = ; targetId = ; pricePerShare =
lbl.confirm.Text =
lbl.confirm.TextColor3 = .(,,)
mode =
lastSnapShares, lastSnapPoints = ()
()
input.KeyCode == .KeyCode.B
mode ==
mode =
targetId (mode == mode == mode == )
mode =
()
input.KeyCode == .KeyCode.S
mode ==
mode =
targetId (mode == mode == mode == )
mode =
()
input.KeyCode == .KeyCode.H
targetIdRaw = ; targetId = ; pricePerShare =
buyCount = ; sellCount = ; cycles =
totalInvested = ; totalReturned =
lbl.confirm.Text =
mode =
lastSnapShares, lastSnapPoints = ()
(()
running mode ==
newShares, newPoints = ()
best, allChanges, ptsDiff = (lastSnapShares, lastSnapPoints, newShares, newPoints)
best
targetIdRaw = best.key
targetId = best.numId
confirmText = .. (targetId) .. .. best.diff ..
ptsDiff >
confirmText = confirmText .. .. (ptsDiff) ..
pricePerShare = ptsDiff / best.diff
confirmText = confirmText ..
#allChanges >
confirmText = confirmText ..
i, c (allChanges)
i <= c.key ~= best.key
confirmText = confirmText .. .. (c.numId) .. .. c.diff ..
lbl.confirm.Text = confirmText
mode =
()
mode ==
lastSnapShares, lastSnapPoints = newShares, newPoints
()
)
()
input.KeyCode == .KeyCode.N mode ~=
running =
gui:()
)
can be used to make alot of robux