Author

Topic: AI evolved algorithmic BTC price prediction (Read 1431 times)

legendary
Activity: 1199
Merit: 1012
February 06, 2013, 11:07:00 PM
#7
Did I get it right that Critticall is closed source software for windows?
sr. member
Activity: 254
Merit: 250
Digital money you say?
February 06, 2013, 09:28:49 PM
#6
Ah, driving your car by looking into the rear mirror, are we? :-P

Ente

Hey! I am good at that.
legendary
Activity: 2618
Merit: 1006
February 06, 2013, 05:50:23 PM
#5
The real formula rather would look like this probably:

Price at the end of the month is:
http://lmgtfy.com/?q=sqrt+42+eur%5E2+per+cm+times+pi+times+inch+times+c+per+USD+per+nanosecond+times+candela
legendary
Activity: 2126
Merit: 1001
February 05, 2013, 07:49:58 AM
#4
Ah, driving your car by looking into the rear mirror, are we? :-P

Ente
legendary
Activity: 1036
Merit: 1002
February 04, 2013, 03:21:50 PM
#3
Isn't that green line just the exponential function?

This again... Roll Eyes
hero member
Activity: 728
Merit: 500
February 04, 2013, 01:04:50 PM
#2
What parameters is it estimating?
hero member
Activity: 714
Merit: 500
Psi laju, karavani prolaze.
February 04, 2013, 11:37:21 AM
#1
More for fun than anything, but might as well share here.

Using Critticall, only btc/usd rate per difficulty change as input data.

Running for about 36hrs on two i7 cores. (which is not really much for that many data points)




Some comments from -assets;
Quote
02:44.06 ( pizzaman1337 ) kakobreklaa: red line seems much more likely... (plus more noise)
Quote
09:41.29 ( mircea_popescu ) tbh i think algo 1 is better.
09:42.01 ( mircea_popescu ) at least on the long term


Feel free to continue the evolution from this point on, or start from scratch. It may bring out different results, but will be getting closer and closer as time progresses. I'll leave this running for a while then change the data sets and include some support sequences as well. Usefulness of this is limited, but it sure is interesting.

Code:
$DECLAREINT sample_size sample_size_test zero i j predicted cumulative_discord observation prediction discord infinity thousand minus_one seq_a_size seq_b_size seq_c_size seq_d_size seq_e_size seq_f_size seq_g_size seq_h_size seq_i_size seq_j_size seq_k_size seq_l_size seq_m_size seq_n_size x y z w q r s t u v
$DIMENSION observation_array[100] target_sequence[100] discord_array[100] relative_discord[100]
$INVAR observation_array[](5,5,6,7,7,6,6,6,9,10,19,27,27,21,21,25,30,39,44,86,104,93,85,88,67,115,329,380,714,855,1846,1968,1559,1480,1404,1317,1130,878,584,492,401,319,251,279,318,404,705,629,592,427,469,535,477,489,508,505,512,546,667,651,834,895,1164,1045,1094,1241,1284,1179,1075,1100,1236,1342,1334,1372,1722,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)
$WEIGHTS commands=0 OPERATION_-=1 lines=1
$SHOWVAR cumulative_discord observation_array[] target_sequence[] discord_array[] relative_discord[]
$RESVAR observation_array[] discord_array[] relative_discord[] zero observation prediction discord cumulative_discord sample_size sample_size_test i j infinity minus_one thousand seq_a_size seq_b_size seq_c_size seq_d_size seq_e_size seq_f_size seq_g_size seq_h_size seq_i_size seq_j_size seq_k_size seq_l_size seq_m_size seq_n_size
$RESCOM VAR_TO_ARRAY
$PENVAL cumulative_discord
$MINIMIZE LINES 92
$SOUND OFF

x=0;
y=0;
z=0;
w=0;
q=0;
r=0;
s=0;
t=0;
u=0;
v=0;
zero=0;
minus_one=-1;
thousand=1000;
infinity=1000000;
seq_a_size=0;
seq_b_size=0;
seq_c_size=0;
seq_d_size=0;
seq_e_size=0;
seq_f_size=0;
seq_g_size=0;
seq_h_size=0;
seq_i_size=0;
seq_j_size=0;
seq_k_size=0;
seq_l_size=0;
seq_m_size=0;
seq_n_size=0;
sample_size=100;
sample_size_test=75;
i=zero;
predicted=0;
while (i$BES
    w+=3;
    z=target_sequence[z];
    predicted+=1;
    if (z>v) {
        if (x==y) {
            predicted+=-3;
            predicted*=6;
            q=t^q;
            v=sqrt(predicted);
            goto labelcritticall15;
        }
        r&=-9;
        r+=-30;
        y=q;
        t=!predicted;
        predicted=!q;
        predicted=predicted-r;
        q=w;
        w=t&v;
        w+=-1;
        r+=-7;
        labelcritticall15:;
        r=x^r;
        z=v;
        x+=1;
    }
    r+=-3;
    z+=18;
$EES
    target_sequence[i]=predicted;
    i++;
}
cumulative_discord=zero;
i=zero;
predicted=0;


 while (i observation=observation_array[i];
 prediction=target_sequence[i];
 discord=prediction-observation;
 discord_array[i]=discord;
 relative_discord[i]=minus_one;
 discord=abs(discord);
 discord*=1;
 cumulative_discord=cumulative_discord+discord;
 if (discord == zero) {
 relative_discord[i]=minus_one;
 } else {
 if (observation == zero) {
 relative_discord[i]=thousand;
 } else {
 if (discord < infinity) {
 discord=discord*thousand;
 discord=discord/observation;
 relative_discord[i]=discord;
 cumulative_discord=cumulative_discord+discord;
 }
 }
 }
 i++;
 }


Code:
$DECLAREINT sample_size sample_size_test zero i j predicted cumulative_discord observation prediction discord infinity thousand minus_one seq_a_size seq_b_size seq_c_size seq_d_size seq_e_size seq_f_size seq_g_size seq_h_size seq_i_size seq_j_size seq_k_size seq_l_size seq_m_size seq_n_size x y z w q r s t u v
$DIMENSION observation_array[100] target_sequence[100] discord_array[100] relative_discord[100]
$INVAR observation_array[](5,5,6,7,7,6,6,6,9,10,19,27,27,21,21,25,30,39,44,86,104,93,85,88,67,115,329,380,714,855,1846,1968,1559,1480,1404,1317,1130,878,584,492,401,319,251,279,318,404,705,629,592,427,469,535,477,489,508,505,512,546,667,651,834,895,1164,1045,1094,1241,1284,1179,1075,1100,1236,1342,1334,1372,1722,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)
$WEIGHTS commands=0 OPERATION_-=1 lines=1
$SHOWVAR cumulative_discord observation_array[] target_sequence[] discord_array[] relative_discord[]
$RESVAR observation_array[] discord_array[] relative_discord[] zero observation prediction discord cumulative_discord sample_size sample_size_test i j infinity minus_one thousand seq_a_size seq_b_size seq_c_size seq_d_size seq_e_size seq_f_size seq_g_size seq_h_size seq_i_size seq_j_size seq_k_size seq_l_size seq_m_size seq_n_size
$RESCOM VAR_TO_ARRAY
$PENVAL cumulative_discord
$MINIMIZE LINES 92
$SOUND OFF

x=0;
y=0;
z=0;
w=0;
q=0;
r=0;
s=0;
t=0;
u=0;
v=0;
zero=0;
minus_one=-1;
thousand=1000;
infinity=1000000;
seq_a_size=0;
seq_b_size=0;
seq_c_size=0;
seq_d_size=0;
seq_e_size=0;
seq_f_size=0;
seq_g_size=0;
seq_h_size=0;
seq_i_size=0;
seq_j_size=0;
seq_k_size=0;
seq_l_size=0;
seq_m_size=0;
seq_n_size=0;
sample_size=100;
sample_size_test=75;
i=zero;
predicted=0;
while (i$BES
    y|=1;
    while (t        y^=15;
        w+=-16;
        r+=2;
        if (t            r+=6;
            y=t;
            w+=-160;
            v<<=7;
            if (r>predicted) {
                v=r;
                y=0;
                t=17;
            }
            predicted=0;
            t+=13;
        }
        v+=-1;
    }
    v+=1;
    v^=5;
    t=10;
    r+=1;
    predicted=r|v;
    v=target_sequence[y];
    predicted+=-1;
    w=r;
$EES
    target_sequence[i]=predicted;
    i++;
}
cumulative_discord=zero;
i=zero;
predicted=0;


while (iobservation=observation_array[i];
prediction=target_sequence[i];
discord=prediction-observation;
discord_array[i]=discord;
relative_discord[i]=minus_one;
discord=abs(discord);
discord*=1;
cumulative_discord=cumulative_discord+discord;
if (discord == zero) {
relative_discord[i]=minus_one;
} else {
if (observation == zero) {
relative_discord[i]=thousand;
} else {
if (discord < infinity) {
discord=discord*thousand;
discord=discord/observation;
relative_discord[i]=discord;
cumulative_discord=cumulative_discord+discord;
}
}
}
i++;
}
Jump to: