@Добрый робот (ChatGPT)
проверь код на ошибки и оптимизируй его
res_1=[1,1,0,0,1,0,1,0,1,1,1,1,0,1,0,0,0,0,0,0,1,1,0,1,1,0,1,1,0,1,0,1,0,1,1,0,1,1,1,0,1,1,0,1,1,1,1,0];
res_2=[0,0,1,1,0,1,0,1,0,0,0,0,1,0,1,1,1,1,1,1,0,0,1,0,0,1,0,0,1,0,1,0,1,0,0,1,0,0,0,1,0,0,1,0,0,0,0,1];
quote_1=[8.15,2.52,3.56,2.78,1.54,4.14,1.59,1.81,1.50,1.39,1.56,1.95,1.59,1.20,1.58,2.14,2.65,1.14,4.30,2.87,3.12,1.59,1.43,4.86,2.10,2.21,1.13,2.48,6.17,1.06,2.13,1.30,2.90,2.88,1.33,1.62,1.85,3.73,1.07,1.11,1.79,1.51,1.65,1.54,1.27,1.95,2.17,1.55];
quote_2=[1.08,1.55,1.31,1.46,2.55,1.24,2.42,2.04,2.65,3.06,2.48,1.88,2.42,4.76,2.43,1.74,1.50,6.06,1.23,1.44,1.38,2.42,2.92,1.19,1.76,1.69,6.18,1.56,1.13,10.17,1.74,3.59,1.43,1.43,3.38,2.36,1.98,1.29,8.79,6.91,2.07,2.64,2.29,2.55,3.99,1.88,1.72,2.51];
x_1=15;x_2=15; y=48;bank=100000;
w_1=0;l_1=0; count_l_1=0; count_w_1=0;bet_1=0;stav_1=0;
w_2=0;l_2=0; count_l_2=0; count_w_2=0;bet_2=0;stav_2=0;
new_dim_1=[];
new_dim_2=[];
dim=[];
total=[];
bank_1=bank;
bank_2=bank;
ii=0;
sum_stavka=0;
cur_time=Date.now();
function round_dig(dig)
{
return dig_1=Math.floor(dig*10000)/10000;
}
function matrx (a,b,c1)
{
for ( j=a; j>-1; j--)
{
dim[j]=[];
for ( i=b-1; i>-1; i--)
{
if ( j==a)
{ dim[j]
=1;}
else
{
if ( a-j==b-i )
{ dim[j]=Math.pow(c1,b-i);}
else {
dim[j]=c1*dim[j][i+1]*dim[j+1][i+1]/(dim[j][i+1]+(c1-1)*dim[j+1][i+1]);
}
}
}
}
return(dim);
}
function transpose(a)
{
return dim[0].map(function (_, c) { return dim.map(function (r) { return r[c]; }); });
}
matrx(x_1,y,quote_1[0]);
new_dim_1=transpose(dim);
matrx(x_2,y,quote_2[0]);
new_dim_2=transpose(dim);
do
{
count_l_1=0; count_l_2=0;count_w_1=0; count_w_2=0;
if (ii==1) {console.log(new_dim_1); console.log('длина массива=',x_1-count_w_1,res_1.length,'сам массив',res_1);}
bet_1=1-quote_1[0]*new_dim_1[count_l_1+count_w_1][count_w_1+1]/(new_dim_1[count_l_1+count_w_1][count_w_1]+(quote_1[0]-1)*new_dim_1[count_l_1+count_w_1][count_w_1+1]);
bet_2=1-quote_2[0]*new_dim_2[count_l_2+count_w_2][count_w_2+1]/(new_dim_2[count_l_2+count_w_2][count_w_2]+(quote_2[0]-1)*new_dim_2[count_l_2+count_w_2][count_w_2+1]);
if ( res_1[0]==1)
{
mid_1=bet_1*bank_1*(quote_1[0]-1);
stav_1=bet_1*bank_1;
bank_1=bank_1+bet_1*bank_1*(quote_1[0]-1);
count_w_1++;
x_1=x_1-count_w_1;
res_1.splice(0,1);
quote_1.splice(0,1);
matrx(x_1,res_1.length,quote_1[0]);
new_dim_1=transpose(dim);
}
else
{
bank_1=bank_1-bet_1*bank_1;
stav_1=bet_1*bank_1;
count_l_1++;
res_1.splice(0,1);
quote_1.splice(0,1);
matrx(x_1,res_1.length,quote_1[0]);
new_dim_1=transpose(dim);
}
if ( res_2[0]==1)
{
mid_2=bet_2*bank_2*(quote_2[0]-1);
stav_2=bet_2*bank_2;
bank_2=bank_2+bet_2*bank_2*(quote_2[0]-1);
count_w_2++;
x_2=x_2-count_w_2;
res_2.splice(0,1);
quote_2.splice(0,1);
matrx(x_2,res_2.length,quote_2[0]);
new_dim_2=transpose(dim);
}
else
{
bank_2=bank_2-bet_2*bank_2;
stav_2=bet_2*bank_2;
count_l_2++;
res_2.splice(0,1);
quote_2.splice(0,1);
matrx(x_2,res_2.length,quote_2[0]);
new_dim_2=transpose(dim);
}
ii++;
total[ii]=(bank_1+bank_2-100000);
sum_stavka=sum_stavka+stav_1+stav_2;
console.log('шаг=',ii,'кэф шага плечо 1',round_dig(bet_1),'ставка 1=',round_dig(stav_1),'кэф шага плечо 2',round_dig(bet_2),'ставка 2=',round_dig(stav_2),
'Банк 1=',round_dig(bank_1),'Банк 2=',round_dig(bank_2),'Всего банк=',round_dig(total[ii]),'Всего профит=',round_dig(total[ii]-bank));
if ( count_w_1==x_1 || count_w_2==x_2 )
{
console.log('Достигнут максимум побед','Время выполнения скрипта=',(Date.now()-cur_time)/1000);
break;
}
}
while (ii<=y)