SRL Archive - RS3 Outdated / Broken Scripts

Grand Exchange Predictor


almost

2009-10-02 09:08:47

This script will look at an item's graph on the grand exchange and basically try to guess what will happen next and draw it out.
It is also useful for some other things if you like merchanting.
This is one of those projects that was supposed to be quick, and then a few days later I'm still stuck and have gotten no where, but here it finally is.

How to use it-
Open up the grand exchange on your web browser and have a graph up and visible (with SCAR not blocking the graph).
Drag the corsshair to the window!
You can have 30, 90, or 180 day up, any will work.
I prefer 90 day graphs.
Run the script and there you go.

What the features do-
Show Circles-
This toggles the yellow and blue circles on and off.
Yellow represents a point where you need to sell your item.
Blue represents a point where you need to buy your item.

Green rise/ Red fall-
These 2 can be switched on and off to emphasize what part of the graph you are wanting to look at.
Turning both off will leave just a white line.

Generate prediction-
This button creates the prediction of what will happen next and displays it.

Highlight prediction-
Checking this will turn the newly added segment of the graph blue to show exactly what part has been generated.

Connect highs-
This makes a line connecting all the high points together, giving you a good idea of the item's max range.

Connect lows-
This makes a line connecting all the low points together, giving you a good idea of the item's low range.

Guide line-
This is my recreation of the "30 day average" line that jagex uses.
The box underneath it that says "curve" is how closely it follows the actual graph.
A curve of 50 can be used to show when prices are above/ below their average.




You can obviously view the source, but it's a bit hard to follow
frmDesign.Canvas.Ellipse(Fall[High(Fall)].x - 4, Fall[High(Fall)].y - 4, Fall[High(Fall)].x + 4, Fall[High(Fall)].y + 4);
IncEx(R, FindAngle(Rise[0].x, Rise[0].y, Rise[high(rise)].x, Rise[high(rise)].y));
IncEx(RR, Distance(Rise[0].x, Rise[0].y, Rise[high(rise)].x, Rise[high(rise)].y));
Points[1]:= Point(Round(Sin(R * Pi / 180) * Radius) + Points[0].x, Round(Cos(R * Pi / 180) * -Radius) + Points[0].y);
Points[2]:= Point(Round(Sin(F * Pi / 180) * FR) + Points[1].x, Round(Cos(F * Pi / 180) * -FR) + Points[1].y);

So here is how it comes up with a "prediction"

It sorts all the points into the graph into 2 array of TPointArray's, one for rising lines and one for falling lines.
It measures how high each rise/ fall is and how long each lasts.
Then an "average" can be calculated based on that, which is drawn in on the end.


Note:
This only shows what is LIKELY to happen based on past events.
DO NOT invest money into something you see happening with this script if you don't know much about merching.
Also this script only works well on items with a lot of rising and falling.
It doesn't work as good with strange graphs like rares or items that have been merched by clans a lot.

georgeh

2009-10-04 16:17:12

over a long period of time would i end up making a profit?

rogeruk

2009-10-04 16:18:23

Crashed SCAR when ran

Sir R. M8gic1an

2009-10-04 16:26:57

GE.Scar + this => Merchanter = win :)

~RM

Gu3st...

2009-10-04 20:08:47

From: rogeruk
Crashed SCAR when ran


Me too :/
I really want to try this script :P
I am using 3.22

almost

2009-10-04 23:19:52

This was made on 3.20
I'll download the newest version and see what happens.

Edit:
Downloaded 3.21 and I can't get anything to crash.
I tried changing my screen resolution because I keep mine really high and it still worked.
Here is a screenshot of it
http://i200.photobucket.com/albums/aa143/kronikel/graph.jpg

When it crashes does it give an error message or just disappear?
Does scar have anything written out in the debug box?
Does the form come up before it crashes?

Also you have to have the graph visible when it is ran or it won't find any points (use the hotkeys to run the script)

jakeyboy29

2009-10-04 23:57:51

[Runtime Error] : Exception: Access violation at address 00589CAE in module 'scar.exe'. Read of address 0000000E in line 124 in script C:\Documents and Settings\Jake\My Documents\Grand Exchange predicter.scar

almost

2009-10-05 02:10:53

Anyone else have any info?
It's hard to fix an error that doesn't happen for you.

lightcam999

2009-10-05 02:41:50

Access violation at address 75A65276 in module 'GDI32.dll'. Write of address 00000008. looked at Santa hats

YoHoJo

2009-10-05 03:28:35

Also crash.
@RM, meh i just like merchanting by hand, no need for script. Buy st00f, wait, sell st0ff, profit!

almost

2009-10-05 03:40:32

Still wondering
Does scar have anything written out in the debug box?
Does the form come up before it crashes?

And isn't it strange that mine has never done this but it seems to happen to every other person?

caused

2009-10-05 03:40:53

You could make a bot that downloads the graphs of all f2p items and filters out the best merch items. That would be amazing, also for a bot that would auto-merch.

Good job :). Maybe work on the prediction function ;D.

~caused

//Edit: It worked very well here.

YoHoJo

2009-10-05 03:42:08

Meh "best merch item" is kind of an opinion. And why does everyone want merch bots!
Its easy. Just pick an item to merch based on graphs, buy it, wait, sell it. Why would you need to auto that it takes 3 minutes?!

Rick

2009-10-05 03:42:44

The error is because you are passing an empty TPA to HorizontalTPAToLine.

Add this after line 104


Writeln(IntToStr(Length(TPA)) + ' ' + intToStr(High(TPA)));

and you get this


0 -1

Just add a check in there to prevent errors, or use try .. except.

almost

2009-10-05 07:43:00

You won't pass an empty TPA if it finds the graph.
So a check for length won't help anything except for keeping SCAR from crashing.
The script still can't do anything with an empty TPA.

I don't understand how it doesn't create the TPA for some people then.
It just uses FindColorsTolerance on the yellow color of the line on the graph to set a TPA of all the points.

Edit:
Drag the SCAR crosshair either to the web page or to your desktop.
If you had targeted something else and bring up the GE page with a graph on it, the coords are all messed up so it won't find the TPA.

mario97000

2009-10-05 10:13:52

it works great for me thinks for making it. it gives me ideas for some scripts :)

Solaris

2009-10-25 18:39:14

I think this is a great idea good work

Beav

2009-10-26 22:55:33

So pretty much lets you know if an item is heading for a statistical rise or crash by looking at the numbers? Auto merching? Nice, great work.

Gu3st...

2009-11-13 13:42:24

From: altec
tried it with pure ess :) and it shows it will rise so i will try with like 500k :P
great thing, GJ
I doubt it :/
but good luck :P

VissyBlu

2009-11-16 15:36:12

Tried it, like it, good job :D

wesleyxD

2009-11-16 15:56:36

New client targeted
Successfully compiled (52 ms)
Finding graph points…
Sorting the graph points from left to right…
Turning TPA into a line…
[Runtime Error] : Out Of Range in line 124

iden1050

2009-12-11 04:58:02

didnt work for me. same error as wesley.

neko gio goto

2010-04-26 02:52:56

How does it predict?

Cazabacca

2010-04-26 11:53:04

From: neko gio goto
How does it predict?


Don't gravedig please..

g0tp0t

2010-04-26 14:00:22

i change the line it crashes on to i-1 and it compiles, but it stops at finding graph points


EDIT: i figured that i must have mised instructions :P ill retry and repost. ;)


EDIT2: i cant get ther cuz rs is blocked at school :O. i remember that they only blocked game.ws, must have changed

i took a quiz because i wanted to see the answer to a qurestion on a page with pic of graph. scar didnt work with the pic but here is the badge they told me to post since im so smart ^.^

—–

i give up trying to fix this, it is forever broken -.-

deadlywario0

2010-04-27 11:14:38

sounds complicated :o

g0tp0t

2010-04-29 10:57:57

lol, i havnt read the script thoroughly. but i think it analyzes the general pattern of the graph, and applies it to the end, so it isnt that accurate. i may be wrong and it may bee waaayyy more complicated, but anyways,

lets keep this thread closed, if someone revives the script they can make a new thread :D