Bitcoin Forum
December 15, 2017, 10:47:38 PM *
News: Latest stable version of Bitcoin Core: 0.15.1  [Torrent].
 
   Home   Help Search Donate Login Register  
Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 [46] 47 48 49 50 51 »
  Print  
Author Topic: Seuntjie' Dice bot programmers mode discussion.  (Read 52322 times)
ssongssu37
Newbie
*
Offline Offline

Activity: 28


View Profile
September 28, 2017, 05:04:27 PM
 #901

Hi, I made my first script from watching tutorial youtube and other guides.

What it does is it searches for 200 rows of number < 99.34 while rolling 50% at 10satoshi. (This is because 10 satoshi gives me faster speed)

When it reaches 200 rolls It changes the chance to .66% and starts the martingale to look for high number above 99.34.

increase after each bet is 1.00725x

When I get a hit it goes back to searching for 200 rows again.

Code:
chance = 50

basebet = .0000001
betcount = 0
nextbet= basebet
bethigh = false

function dobet()

if betcount>100 and win then
chance = 50
nextbet= basebet
bethigh=false
betcount=0
end

if lastBet.Roll <99.34 then
betcount +=1
else
betcount = 0
end

if betcount >100 then
chance = .66
nextbet = previousbet*1.00725
bethigh = true
end

end

What I want to improve on my script is that I want to be able to search for not only high .66% numbers but also low .66% numbers at the same time.

And which ever rows of 200 comes first I can start martingale for lows or highs.

Can anybody help me?

Thank you.
1513378058
Hero Member
*
Offline Offline

Posts: 1513378058

View Profile Personal Message (Offline)

Ignore
1513378058
Reply with quote  #2

1513378058
Report to moderator
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.
1513378058
Hero Member
*
Offline Offline

Posts: 1513378058

View Profile Personal Message (Offline)

Ignore
1513378058
Reply with quote  #2

1513378058
Report to moderator
1513378058
Hero Member
*
Offline Offline

Posts: 1513378058

View Profile Personal Message (Offline)

Ignore
1513378058
Reply with quote  #2

1513378058
Report to moderator
1513378058
Hero Member
*
Offline Offline

Posts: 1513378058

View Profile Personal Message (Offline)

Ignore
1513378058
Reply with quote  #2

1513378058
Report to moderator
HCP
Sr. Member
****
Offline Offline

Activity: 448

<insert witty quote here>


View Profile
September 29, 2017, 01:36:35 AM
 #902

You could just create a 2nd "betcount" variable... and do the check and increment on that as well... so instead of betcount, use lowCount and highCount...

Code:
lowcount = 0
highcount = 0
...
function dobet()
...
  #check and reset on wins etc
...
  if lastBet.Roll < 99.34 then
    highcount += 1
  else
    highcount = 0
  end
 
  if lastBet.Roll > 0.66 then
    lowcount += 1
  else
    lowcount = 0
  end

  if highcount > 100 then
    chance = 0.66
    nextbet = previousbet*1.00725
    bethigh = true
    bettinghigh = true
  elseif lowcount > 100 then
    chance = 0.66
    nextbet = previoubet*1.00725
    bethigh = false
    bettinglow = true
  end

end
You will probably need to put in checks on the "bettingHigh = true" and "bettingLow = true" flags or you might find it switches from one to the other if both high and low hit 200+ streaks


One last thing... the "max expected" loss streak for that chance over 1,000,000 rolls is something like 1400-1500... so don't be too surprised when you suddenly hit a crazy 1000+ losing streak and find you've lost 0.1 BTC+ on your martingale #justSaying Wink

ssongssu37
Newbie
*
Offline Offline

Activity: 28


View Profile
September 29, 2017, 09:22:02 PM
 #903

You could just create a 2nd "betcount" variable... and do the check and increment on that as well... so instead of betcount, use lowCount and highCount...

Code:
lowcount = 0
highcount = 0
...
function dobet()
...
  #check and reset on wins etc
...
  if lastBet.Roll < 99.34 then
    highcount += 1
  else
    highcount = 0
  end
  
  if lastBet.Roll > 0.66 then
    lowcount += 1
  else
    lowcount = 0
  end

  if highcount > 100 then
    chance = 0.66
    nextbet = previousbet*1.00725
    bethigh = true
    bettinghigh = true
  elseif lowcount > 100 then
    chance = 0.66
    nextbet = previoubet*1.00725
    bethigh = false
    bettinglow = true
  end

end
You will probably need to put in checks on the "bettingHigh = true" and "bettingLow = true" flags or you might find it switches from one to the other if both high and low hit 200+ streaks


One last thing... the "max expected" loss streak for that chance over 1,000,000 rolls is something like 1400-1500... so don't be too surprised when you suddenly hit a crazy 1000+ losing streak and find you've lost 0.1 BTC+ on your martingale #justSaying Wink



Hi, Thank you for the response on my script!!

I've been working on my script all night long and I succeeded to count both ways. Here is my improved script.


Code:
chance = 50
basebet = .0000002
highcount = 0
lowcount = 0
nextbet= basebet
bethigh = false

function dobet()

if highcount>200 and win then
chance = 50
nextbet= basebet
bethigh=false
highcount=0
end

if lowcount>200 and win then
chance = 50
nextbet= basebet
bethigh=true
lowcount=0
end

if lastBet.Roll <99.34 and lowcount<200  then
highcount +=1
end

if lastBet.Roll >=99.34 then
highcount = 0
end

if lastBet.Roll >00.66 and highcount<200 then
lowcount +=1
end

if lastBet.Roll <=00.66 then
lowcount = 0
end

if highcount >=200  and lowcount <200  then
chance = .66
nextbet = previousbet*1.00725
bethigh = true
end

if lowcount >=200 and highcount <200  then
chance = .66
nextbet = previousbet*1.00725
bethigh = false
end

end



end



However, when the martingale is triggered after 200 count, the other side stop counting at 199 so that I don't trigger the martinale on the high side while low side martingale is in action.

How could I make the other side keep counting yet it doesn't trigger the martingale to other side?

And when that is possible, Let's say after a win on a martingale on the low side, the high side has accumulated count of 400 counts, then I want to go into the high side martingale right away with the increased basebet amount that would have been betted if it was triggered at 200 count.

so when the accumulated count is 400, then I want it to start the martingale at higher bet amount instead of the basebet.


PS. when should I use "elseif" instead of "if"
     What is "bettinghigh", "bettinglow" true/false ? What do they do?

Thank you for the help!!



seuntjie
Legendary
*
Offline Offline

Activity: 1448



View Profile WWW
September 30, 2017, 01:34:25 PM
 #904

PS. when should I use "elseif" instead of "if"
     What is "bettinghigh", "bettinglow" true/false ? What do they do?

https://steemit.com/dicebot/@seuntjie/dicebot-programmer-mode-tutorial-1-1-variables

ssongssu37
Newbie
*
Offline Offline

Activity: 28


View Profile
September 30, 2017, 08:10:24 PM
 #905

PS. when should I use "elseif" instead of "if"
     What is "bettinghigh", "bettinglow" true/false ? What do they do?

https://steemit.com/dicebot/@seuntjie/dicebot-programmer-mode-tutorial-1-1-variables

It doesn't say anything about "elseif"

and "bettinghigh"?

What's the difference between "bethigh" and "bettinghigh"?

chilly2k
Legendary
*
Offline Offline

Activity: 963


View Profile
September 30, 2017, 09:08:17 PM
 #906

PS. when should I use "elseif" instead of "if"
     What is "bettinghigh", "bettinglow" true/false ? What do they do?

https://steemit.com/dicebot/@seuntjie/dicebot-programmer-mode-tutorial-1-1-variables

It doesn't say anything about "elseif"

and "bettinghigh"?

What's the difference between "bethigh" and "bettinghigh"?



   There is nothing called elseif.  it's an
if
else (this is optional)
end
 
 statement.  But you can nest them so you could have

if
else
   if  <- this is only checked if the upper "if" failed. 
   end
end
 
 You can also have
if
  if
  end
else
  if
  end
end


bettinghigh is something you made up, so you will have to tell us what it means. 

bethigh (true/false) is how you tell the program how you want the next bet placed.  bethigh = true (bet high) = false (bet low)

 

HCP
Sr. Member
****
Offline Offline

Activity: 448

<insert witty quote here>


View Profile
September 30, 2017, 09:18:45 PM
 #907

They're just made up variables.... You can call them wherever you want...

In this case, they're what is known as a Boolean or True/False "flag" used to indicate a specific state...

Are we "betting high"?  Yes or No? Etc

With regards to the if/elseif/else question: www.tutorialspoint.com/lua/if_else_statement_in_lua.htm

They're useful for identifying a specific condition when you have multiple options...

Ie. (If) Is it blue? (elseif) Or red? (elseif) Or green? (elseif) Or yellow? (else) Or none of those colours

If the terms aren't familiar to you, then I suggest you read some basic programming tutorials and the ones that Seuntjie wrote, specific to the bot: https://bot.seuntjie.com/ProgrammerMode.aspx


There is nothing called elseif.
Yes, there is... Tongue

chilly2k
Legendary
*
Offline Offline

Activity: 963


View Profile
September 30, 2017, 09:36:18 PM
 #908

They're just made up variables.... You can call them wherever you want...

In this case, they're what is known as a Boolean or True/False "flag" used to indicate a specific state...

Are we "betting high"?  Yes or No? Etc

With regards to the if/elseif/else question: www.tutorialspoint.com/lua/if_else_statement_in_lua.htm

They're useful for identifying a specific condition when you have multiple options...

Ie. (If) Is it blue? (elseif) Or red? (elseif) Or green? (elseif) Or yellow? (else) Or none of those colours

If the terms aren't familiar to you, then I suggest you read some basic programming tutorials and the ones that Seuntjie wrote, specific to the bot: https://bot.seuntjie.com/ProgrammerMode.aspx


There is nothing called elseif.
Yes, there is... Tongue

Not a LUA guy.  Just play one on the interweb...  Tongue  I did not know that.  So you can have multiple elseif's and they get treated something like a select statement in other languages.  Learn something new everyday.  Thanks. 

ssongssu37
Newbie
*
Offline Offline

Activity: 28


View Profile
September 30, 2017, 09:54:32 PM
 #909

Quote
They're just made up variables.... You can call them wherever you want...

In this case, they're what is known as a Boolean or True/False "flag" used to indicate a specific state...

Are we "betting high"?  Yes or No? Etc

Code:
  if highcount > 100 then
    chance = 0.66
    nextbet = previousbet*1.00725
    bethigh = true
    bettinghigh = true
  elseif lowcount > 100 then
    chance = 0.66
    nextbet = previoubet*1.00725
    bethigh = false
    bettinglow = true
  end

How would I define bettinghigh and bettinglow flags before the "function dobet()"?

Do I put like

Code:
bettinghigh = betting>=99.34
bettinglow = betting <=00.66

??


Quote
You will probably need to put in checks on the "bettingHigh = true" and "bettingLow = true" flags or you might find it switches from one to the other if both high and low hit 200+ streaks


I not sure how checking bettinghigh and bettinglow stops from both high and low bets from switching when both are over 200. Could you explain the logic a bit more?

Thank you.
HCP
Sr. Member
****
Offline Offline

Activity: 448

<insert witty quote here>


View Profile
October 01, 2017, 01:01:01 AM
 #910

You have three possible states...

1. Base betting, waiting for a streak of losses
2. Betting high after 200 rolls under 99.34
3. Betting low after 200 rolls over 0.66

So you set the flags accordingly...

1. bettingHigh = false, bettingLow = false
2. bettingHigh = true, bettingLow = false
3. bettingLow = true, bettingHigh = false

You can then check things like:

Code:
  if lowcount > 200 then
    if bettingHigh then
      #we're already rolling high, so just keep counting
      ... Do other stuff? ...
    else
      #found a streak, and not currently betting, game on!
      chance = 0.66
      bethigh = false
      nextbet = previousbet * 1.00074
      bettingLow = true
    end
  elseif highcount > 200 then
    if bettingLow then
      #we're already rolling low
      ... Other stuff? ...
    else
      #found a streak
      chance = 0.66
      bethigh = true
      ... Etc etc etc
    end
  end

Hopefully that gets you moving in the right direction Wink

ssongssu37
Newbie
*
Offline Offline

Activity: 28


View Profile
October 01, 2017, 05:02:59 AM
 #911

I've solved the both counts interfering issue with some double counting logic. I've tested it and it works great.
HCP's solution seems much more simple, I will have to study it more. Smiley

Code:

chance = 50
basebet = .0000001
highcount = 0
lowcount = 0
nextbet= basebet
bethigh = false
betcount = 1 -- I wanted to name this "highcount2" can I just make something up and let it count?
losecount = 1 -- This for "lowcount2"

function dobet()

if highcount > 200 and win then
chance = 50
nextbet = basebet
highcount = 0
betcount = 0
losecount += 200
end

if lowcount > 200 and win then
chance = 50
nextbet = basebet
lowcount = 0
losecount = 0
betcount +=200
end

if lastBet.Roll < 99.34 then
highcount += 1
betcount +=1
else
highcount = 0
end

if lastBet.Roll > 00.66 then
lowcount += 1
losecount +=1
else
lowcount = 0
end



if highcount >= 200 and losecount < 200 then
chance = .66
nextbet = previousbet*1.00725
bethigh = true
losecount = 0
end

if lowcount >= 200 and betcount <200 then
chance = .66
nextbet = previousbet*1.00725
bethigh = false
betcount = 0

end

end


With above script I have succeeded in doing martingale from both sides and counting from both sides without interfering each other.

What I really want to improve on this is that when I come out of a martingale win from low side, often times the high side have already accumulated over 200+ counts sometimes even 400+. How can I take advantage of that situation and make the starting bet accordingly?

Code:
if highcount >= 200 and losecount < 200 then
chance = .66
nextbet = previousbet*1.00725 ------- (if the highcount is 300, I want to make the betting amount higher)
bethigh = true
losecount = 0
end



So Could I add something like this before the dobet function?

Code:

newlowbet = basebet*1.00725^(lowcount-200)
newhighbet = basebet*1.00725^(highcount-200)




If I can do the above, how could I implement this in the script?




Thanks HCP for the help!!!! I really appreciate it!
ssongssu37
Newbie
*
Offline Offline

Activity: 28


View Profile
October 02, 2017, 01:15:22 AM
 #912

You have three possible states...

1. Base betting, waiting for a streak of losses
2. Betting high after 200 rolls under 99.34
3. Betting low after 200 rolls over 0.66

So you set the flags accordingly...

1. bettingHigh = false, bettingLow = false
2. bettingHigh = true, bettingLow = false
3. bettingLow = true, bettingHigh = false

You can then check things like:

Code:
  if lowcount > 200 then
    if bettingHigh then
      #we're already rolling high, so just keep counting
      ... Do other stuff? ...
    else
      #found a streak, and not currently betting, game on!
      chance = 0.66
      bethigh = false
      nextbet = previousbet * 1.00074
      bettingLow = true
    end
  elseif highcount > 200 then
    if bettingLow then
      #we're already rolling low
      ... Other stuff? ...
    else
      #found a streak
      chance = 0.66
      bethigh = true
      ... Etc etc etc
    end
  end

Hopefully that gets you moving in the right direction Wink

Ah~~~~~~~!!!! This make sense now!!!

I have three possible states.... I see!!!

Now let me work on my script again with this.
nishakumari
Newbie
*
Offline Offline

Activity: 9


View Profile
October 04, 2017, 04:58:43 PM
 #913

Wondering if someone can help me with this.

I would need to create an Array/Stack on length 10 FIFO(First in First out) which will have some Integer values ","(comma) separated. It should be Dynamic Array/stack means I would need to update it after each bet, so first entry will be replaced by second and second with third and so on and on Top the new value will be stored.

Exapmle:- Array={1,2,3,4,5,6,7}
new element to add in array is 9
so New Array should be Array={2,3,4,5,6,7,9}

Can anyone help me how we can do this?

Sorry if I didn;t able to make it understandable.

Thanks
HCP
Sr. Member
****
Offline Offline

Activity: 448

<insert witty quote here>


View Profile
October 04, 2017, 08:54:08 PM
 #914

You can probably do it easily (but most likely very inefficiently) by using a simple for loop and just moving the items along in the list:

Code:
myArray = {1,2,3,4,5,6,7,8,9,10}

for i=1,#myArray-1 do
  myArray[i] = myArray[i+1]
end
myArray[#myArray] = <INSERT NEW VALUE HERE>

Notes:
- It effectively moves every one place to the left and then adds the new value into the last slot... I don't think this would scale well, so I wouldn't try doing this on an Array that had like 100 values in it.
- Arrays (technically "Tables") in Lua tend to be indexed from 1
- the #myArray notation is basically just the "length" value of the array... a handy little operator when dealing with dynamically sized arrays Wink
- if you need to "read" the value being pushed off the queue, then you need to make sure you use myValue = myArray[1] BEFORE the for loop Wink

seuntjie
Legendary
*
Offline Offline

Activity: 1448



View Profile WWW
October 05, 2017, 06:54:30 AM
 #915

Wondering if someone can help me with this.

I would need to create an Array/Stack on length 10 FIFO(First in First out) which will have some Integer values ","(comma) separated. It should be Dynamic Array/stack means I would need to update it after each bet, so first entry will be replaced by second and second with third and so on and on Top the new value will be stored.

Exapmle:- Array={1,2,3,4,5,6,7}
new element to add in array is 9
so New Array should be Array={2,3,4,5,6,7,9}

Can anyone help me how we can do this?

Sorry if I didn;t able to make it understandable.

Thanks

This is called a queue (Stacks are FILO).

See https://www.lua.org/pil/11.4.html

You can use the code in that page in a seperate file (Call it queue.lua) and add loadfile("queue.lua") at the top of your script, before any variable definitions. Then you can just use the functions normally inside of your script.

nishakumari
Newbie
*
Offline Offline

Activity: 9


View Profile
October 05, 2017, 06:35:48 PM
 #916

Wondering if someone can help me with this.

I would need to create an Array/Stack on length 10 FIFO(First in First out) which will have some Integer values ","(comma) separated. It should be Dynamic Array/stack means I would need to update it after each bet, so first entry will be replaced by second and second with third and so on and on Top the new value will be stored.

Exapmle:- Array={1,2,3,4,5,6,7}
new element to add in array is 9
so New Array should be Array={2,3,4,5,6,7,9}

Can anyone help me how we can do this?

Sorry if I didn;t able to make it understandable.

Thanks

This is called a queue (Stacks are FILO).

See https://www.lua.org/pil/11.4.html

You can use the code in that page in a seperate file (Call it queue.lua) and add loadfile("queue.lua") at the top of your script, before any variable definitions. Then you can just use the functions normally inside of your script.

Thank you so much, I love the tool you made. I hope I would able to make what I am planing to make and would love to donate if make profit.

Thanks
Ligareaux
Member
**
Offline Offline

Activity: 112

BELUGA PAY. Complete Mobile Point of Sale System


View Profile
October 07, 2017, 01:20:49 PM
 #917

how long must be the simulation to say that one script works? (run without go broke)

HCP
Sr. Member
****
Offline Offline

Activity: 448

<insert witty quote here>


View Profile
October 07, 2017, 09:27:07 PM
 #918

I can guarantee that there is no script in existence (or that can be generated) that can provide +EV outcome...

And the longer you play, the more likely it is that you will lose. House edge cannot be defeated in the long run... It's simple maths really.

Your best bet is to invest in the house bankroll Tongue

houseworx
Full Member
***
Offline Offline

Activity: 154


View Profile
October 08, 2017, 01:26:14 AM
 #919

how long must be the simulation to say that one script works? (run without go broke)

my machine working 1m bets in ~6hours i think. so i will say 600hours+ uptime for 100millions bets distance(if script are made for "one work base percentage" to play, if script are playing more than one percentage then more) - then you will be very sure, but even this 100m bets can not "bring" worst streak scenarion every time...

YOLOdice.comFast 1% Edge Dice GameJackpotsRakebackPlay / Earn / Invest
Sign up, level-up, win, join the growing community!

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
houseworx
Full Member
***
Offline Offline

Activity: 154


View Profile
October 08, 2017, 01:31:10 AM
 #920

I can guarantee that there is no script in existence (or that can be generated) that can provide +EV outcome...

And the longer you play, the more likely it is that you will lose. House edge cannot be defeated in the long run... It's simple maths really.

Your best bet is to invest in the house bankroll Tongue

keep talking sh*t around Cheesy

you have problems with that "simple math" if that 1% house edge of dice are problem for you.

YOLOdice.comFast 1% Edge Dice GameJackpotsRakebackPlay / Earn / Invest
Sign up, level-up, win, join the growing community!

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 [46] 47 48 49 50 51 »
  Print  
 
Jump to:  

Sponsored by , a Bitcoin-accepting VPN.
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!