LonesomeTheBlue

Machine Learning / Longs [Experimental]

LonesomeTheBlue Wizard Mis à jour   
Hello Traders/Programmers,

For long time I thought that if it's possible to make a script that has own memory and criterias in Pine. it would learn and find patterns as images according to given criterias. after we have arrays of strings, lines, labels I tried and made this experimental script. The script works only for Long positions.

Now lets look at how it works:

On each candle it creates an image of last 8 candles. before the image is created it finds highest/lowest levels of 8 candles, and creates a string with the lengths 64 (8 * 8). and for each square, it checks if it contains wick, green or red body, green or red body with wicks. see the following picture:

Each square gets the value:
0: nothing in it
1: only wick in it
2: only red body in it
3. only green body in it
4: red body and wick in it
5: green body and wick in it



And then it checks if price went up equal or higher than user-defined profit. if yes then it adds the image to the memory/array. and I call this part as Learning Part.

what I mean by image is:


if there is 1 or more element in the memory, it creates image for current 8 candles and checks the memory if there is a similar images. If the image has similarity higher than user-defined similarty level then if show the label "Matched" and similarity rate and the image in the memory. if it find any with the similarity rate is equal/greater than user-defined level then it stop searching more.

As an example matched image:

and then price increased and you got the profit :)

Options:
Period: if there is possible profit higher than user-defined minimum profit in that period, it checks the images from 2. to X. bars.
Min Profit: you need to set the minimum expected profit accordingly. for example in 1m chart don't enter %10 as min profit :)
Similarity Rate: as told above, you can set minimum similarity rate, higher similarity rate means better results but if you set higher rates, number of images will decrease. set it wisely :)
Max Memory Size: you can set number of images (that gives the profit equal/higher than you set) to be saved that in memory
Change Bar Color: optionally it can change bar colors if current image is found in the memory

Current version of the script doesn't check if the price reach the minimum profit target, so no statistics.

This is completely experimental work and I made it for fun. No one or no script can predict the future. and you should not try to predict the future.

P.S. it starts searching on last bar, it doesn't check historical bars. if you want you should check it in replay mode :)

if you get calculation time out error then hide/unhide the script. ;)


Enjoy!


Notes de version:
Changed some parts for readability
Notes de version:
Put some more explanation into the script. and a filter to choose better images.

this is the filters (explained in following screenshot) that is used in the script:

As this is an experimental/Example work and of course it's not possible fully completed, because it may not ne possible to run ML in Pine, I do NOT recommend you to use it in your trades!.
Notes de version:
Because of last changes in "str.split" command it wasn't working as expected, I added a new function to solve it.
Notes de version:
"str.split" command fixed, so now using it in the script again.
Notes de version:
updated

Script open-source

Dans le véritable esprit de TradingView, l'auteur de ce script l'a publié en open-source, afin que les traders puissent le comprendre et le vérifier. Bravo à l'auteur! Vous pouvez l'utiliser gratuitement, mais la réutilisation de ce code dans une publication est régie par le règlement. Vous pouvez le mettre en favori pour l'utiliser sur un graphique.

Clause de non-responsabilité

Les informations et les publications ne sont pas destinées à être, et ne constituent pas, des conseils ou des recommandations en matière de finance, d'investissement, de trading ou d'autres types de conseils fournis ou approuvés par TradingView. Pour en savoir plus, consultez les Conditions d'utilisation.

Vous voulez utiliser ce script sur un graphique ?