Search content
Sort by

Showing 20 of 23 results by AstroKev
Post
Topic
Board Pools (Altcoins)
Re: [ANN] The First Litecoin PPS Pool (litecoinpool.org)
by
AstroKev
on 20/01/2018, 20:02:14 UTC
pooler, i would really appreciate seeing a larger pile of stats about block solver people.  specifically, the 'last blocks found' would be super nice if i were able to at least get a list of the blocks i have solved (or a particular user has solved) just for fun.

Post
Topic
Board Securities
Re: [HAVELOCK] PETAMINE 700 TH/s or 8.68 GH/s per share
by
AstroKev
on 22/02/2014, 18:32:06 UTC
Look at the price of those shares going up! This is great news!   Grin Up to 0.09 now. I've almost doubled my money and I have no intention of selling anytime soon. It's all good.

i picked up some more also.  Figure if at ~~ 3gh it is 0.07/share, it ought to be nearly 0.2/share with nearly 3x the hash...
Post
Topic
Board Securities
Re: [HAVELOCK] PETAMINE 220 TH/s
by
AstroKev
on 18/02/2014, 19:32:10 UTC
Five days ago Cointerra made it absolutely clear that they had sent all machines form batch 1 (http://cointerra.com/update-production-news-latest-firmware-user-guide-posted/). So, we should receive all of them (30) during this week.

Position of Bitmine is a bit puzzling as of now. Let's hope they deliver before end of February.

Looks like petamine is receiving them -- up to ~~ 9TH; 3x the first two units so I would expect they have 6 online now.

http://eligius.st/~wizkid057/newstats/userstats.php/1PETAmNrgdzx3FwzJPNuhx18JVKdGtwWt6


Post
Topic
Board Securities
Topic OP
[cryptostocks] -- Shares vanishing! Beware!
by
AstroKev
on 15/02/2014, 01:53:04 UTC
UPDATE:  Since this post I have been contacted and given the benefit of doubt by admins - the 4 shares have returned pending investigation.  As I learn more I will continue to update.

I really like cryptostocks and have used them for awhile.  I still do and I am sure there is some simple explanation and correction.  Unfortauntely, after a week of sending emails to their customerservice address, I'm kind of stuck.

The situation is simple.  I had 4 shares of cryptsy and I had a contract (#218) to sell calls.  As the price of cryptsy went down, I decided to cancel the contract.  The contract shows as cancelled, not sold, and they were most certainly not exercised.  However, after this, I no longer have any cryptsy at all.  That is, the four shares the contract was written on had been cancelled, but the shares were removed from my account (no I was not paid for them, either).

I've never had issues there buying/selling/dividending, but the options are definitely hokey.  Plus, the lack of customer support/engagement is a major flag.  [is this why PETA moved to havelock?]

Any advice on how or who i should try reaching out to next to resolve the issue?  Thanks.
Post
Topic
Board Pools (Altcoins)
Re: [ANN][Profit-switch][1.5%fee] multipool.us:Always mine the most profitable coin
by
AstroKev
on 02/09/2013, 20:03:20 UTC
Why's LKY disabled?

Their developer messaged me the other day letting me know we were forked.  I disabled it while I was redownloading the blockchain and I guess I forgot to re-enable it.

Pleasssse leave it disabled. To me Luckycoin is like a persistent weed that needs to be pulled.

I just auto sell it at Cryptsy

only been here with one rig for a day but this technique is working very well so far.  set the autopayouts to cryptsy addresses and set cryptsy to autosell desposits.  makes this pool quite good.

Post
Topic
Board Announcements (Altcoins)
Re: [XPM] [ANN] Primecoin High Performance
by
AstroKev
on 26/07/2013, 03:01:07 UTC
Seeing nearly 2x improvement.  Amazing, great work.

Code:
> ./primecoind getmininginfo
{
    "blocks" : 83381,
    "chainspermin" : 58,
    "currentblocksize" : 1000,
    "currentblocktx" : 0,
    "difficulty" : 9.26739043,
    "errors" : "",
    "generate" : true,
    "genproclimit" : -1,
    "roundsievepercentage" : 30,
    "primespersec" : 33445,
    "pooledtx" : 0,
    "sievepercentage" : 10,
    "sievesize" : 100000,
    "testnet" : false
}
Post
Topic
Board Announcements (Altcoins)
Re: [XPM] [ANN] Primecoin High Performance
by
AstroKev
on 19/07/2013, 07:36:58 UTC
Quote
Have you found any blocks with these changes? My very poor understanding of the algorithm suggests that changing the has factor will not work...

No - I only was testing based on some of Koooooj's comments to see if there was a possible tradeoff.
The primecoin paper says:

Quote
In one case, varying nonce and finding a block header hash that is divisible by a small
primorial number – the product of all primes smaller than a given prime p – can help
only slightly. It allows the prime miner to work on somewhat smaller primes, like maybe
a few digits shorter, for prime numbers of typically 100 digits, only a very small
advantage.

which suggested further that this is only used to help make finding candidates faster.

--------

Related, I finally was able to coerce primecoind to compile on FreeBSD.  Here are some stats for an HP DL 585 w/64 cores -- which is actually almost the same for 5-chains as the cc2.8xlarge:
2013-07-19 07:21:20 primemeter  52706242 prime/h 409095802 test/h      2700 5-chains/h
2013-07-19 07:22:20 primemeter  55256799 prime/h 430313188 test/h      2820 5-chains/h
2013-07-19 07:23:20 primemeter  57252732 prime/h 451175301 test/h      3180 5-chains/h
2013-07-19 07:24:20 primemeter  60431918 prime/h 472296745 test/h      2280 5-chains/h
2013-07-19 07:25:20 primemeter  49530089 prime/h 384528982 test/h      2460 5-chains/h
2013-07-19 07:26:20 primemeter  51512423 prime/h 400527689 test/h      1980 5-chains/h


If you're interested in compiling for FreeBSD, you also will need to install the usual libraries and also change init.cpp:
Code:
//    nMaxConnections = std::max(std::min(nMaxConnections, FD_SETSIZE - nBind - MIN_CORE_FILEDESCRIPTORS), 0);
    nMaxConnections = std::max(std::min(nMaxConnections, static_cast(FD_SETSIZE - nBind - MIN_CORE_FILEDESCRIPTORS)), 0);
I had to specify the install paths for a lot of things and remove the explicit -ldl in the makefile as well.. go figure.



Quote
Did you test with other number aswell?
Yes, I did 10, 11, 12, 13, 14, 15, 16, 17.  It starts to get bad around 13 on the big aws instance.

Quote
I could be wrong, but I'm not convinced this change will make any significant difference. The primorial of 7 is the same as that of 9, since 8 and 9 aren't primes.
No this is not what primorial means.  

primorial(1) = 2
primorial(2) = 2 * 3
primorial(3) = 2 * 3 * 5
and so forth.
primorial(7) = 2 * 3 * 5 * 7 * 11 * 13 * 17 = 510510
primorial(9) = 2 * 3 * 5 * 7 * 11 * 13 * 17 * 19 * 23 = 223092870



Notice the list of divisors this produces when using p#9 * some random price
> bc
print 223092870 * 498497689
111211280127377430

http://www.wolframalpha.com/input/?i=factor+%28111211280127377430%29



Honestly I can't say I really understand what the code is doing here, but based on some the comments from Kooooooj and running through gprof, Weave is sucking up all the time -- so I was trying to push some of the work out of there and into the caller function.  I am 100% speculating also that the increases in difficulty may make the primorial a little more important. But anyway, mostly just hacking.


oh well, off to bed.
Post
Topic
Board Announcements (Altcoins)
Re: [XPM] [ANN] Primecoin High Performance
by
AstroKev
on 19/07/2013, 06:21:31 UTC
Some more stats for people to have fun with:

aws cc2.8xlarge,
primecoin-0.1.1-hp5 native

2013-07-19 06:03:07 primemeter  79132085 prime/h 688566896 test/h      2040 5-chains/h
2013-07-19 06:04:07 primemeter  79653622 prime/h 698384521 test/h      2700 5-chains/h
2013-07-19 06:05:07 primemeter  79337338 prime/h 695558447 test/h      2040 5-chains/h
2013-07-19 06:06:07 primemeter  79792250 prime/h 695628406 test/h      1560 5-chains/h
2013-07-19 06:07:07 primemeter  80470419 prime/h 705139328 test/h      2280 5-chains/h
2013-07-19 06:08:07 primemeter  80764354 prime/h 704518758 test/h      1980 5-chains/h
2013-07-19 06:09:07 primemeter  76383887 prime/h 667428216 test/h      1500 5-chains/h


avg 5-chains/h ~~ 2000

------

aws cc2.8xlarge,
primecoin-0.1.1-hp5 two changes:

1) prime.cpp
const unsigned int nPrimes = (uint64)nTotalPrimes * 8 / 100;  // down from 10

2) main.cpp
static const unsigned int nPrimorialHashFactor = 9; // up from 7

2013-07-19 06:12:12 primemeter  52307908 prime/h 395403610 test/h      2640 5-chains/h
2013-07-19 06:13:12 primemeter  56580497 prime/h 440204443 test/h      2820 5-chains/h
2013-07-19 06:14:12 primemeter  56291842 prime/h 438057079 test/h      3000 5-chains/h
2013-07-19 06:15:12 primemeter  56267549 prime/h 437380981 test/h      2100 5-chains/h
2013-07-19 06:16:12 primemeter  56236005 prime/h 432883711 test/h      2580 5-chains/h
2013-07-19 06:17:12 primemeter  54281275 prime/h 412524505 test/h      2580 5-chains/h
2013-07-19 06:18:12 primemeter  54689509 prime/h 419307812 test/h      2220 5-chains/h

avg 5-chains/h ~~ 2500




Post
Topic
Board Announcements (Altcoins)
Re: [XPM] [ANN] Primecoin High Performance
by
AstroKev
on 19/07/2013, 03:14:47 UTC
My optimization centers around the Primorial and the loop that occurs in main.cpp on line 4622.


Quote
Flat profile:

Each sample counts as 0.01 seconds.
  %   cumulative   self              self     total           
 time   seconds   seconds    calls  ms/call  ms/call  name   
 79.89     45.84    45.84     5698     8.04     8.04  CSieveOfEratosthenes::Weave()
 10.28     51.74     5.90     5694     1.04     1.04  CSieveOfEratosthenes::CSieveOfEratosthenes(unsigned int, unsigned int, __gmp_expr<__m
pz_struct [1], __mpz_struct [1]>&, __gmp_expr<__mpz_struct [1], __mpz_struct [1]>&, CBlockIndex*)
  9.03     56.92     5.18    62611     0.08     0.91  MineProbablePrimeChain(CBlock&, __gmp_expr<__mpz_struct [1], __mpz_struct [1]>&, bool
&, unsigned int&, unsigned int&, unsigned int&, unsigned int&, unsigned int&, __gmp_expr<__mpz_struct [1], __mpz_struct [1]>&)
  0.16     57.01     0.09  7019519     0.00     0.00  FermatProbablePrimalityTest(__gmp_expr<__mpz_struct [1], __mpz_struct [1]> const&, un
signed int&)



Without a doubt, the Weave function is the slowest of them all.  I haven't yet dissected it (and won't really claim to understand what it's trying to do yet), but since this ultimately is buried way below the void static BitcoinMiner(CWallet *pwallet)
 function, I'm guessing that anythign that would result in fewer calls to MineProbablePrimeChain would be a net very good thing.  OTOH, further optimizing Weave still looks like a good bet.
Post
Topic
Board Altcoin Discussion
Re: XPM on Amazon EC2
by
AstroKev
on 19/07/2013, 02:27:03 UTC
m3.2xlarge --

~/primecoin-0.1.1-hp4/src$ ./primecoind getmininginfo
{
    "blocks" : 63588,
    "currentblocksize" : 1000,
    "currentblocktx" : 0,
    "errors" : "",
    "generate" : true,
    "genproclimit" : -1,
    "primespersec" : 3899,
    "pooledtx" : 0,
    "testnet" : false
}


definitely not worth it.

Post
Topic
Board Altcoin Discussion
Re: [XPM] A GPU miner for XPM is around the corner? (via CUMP).
by
AstroKev
on 18/07/2013, 01:54:12 UTC
Agreed that XPM mining is a good addition to BTC/LTC mining!  Except for the peopel who bought the cruddiest processors they could find when building their rigs...

Even though only ADD/SUB/MUL are in CUMP, one might be able to use a binomial method (guess/check/converge) to implement DIV without much difficulty though I don't know how well the operation would perform.

There are quite a few factoring algos/sieves on github using cuda, though my cursory glance was showing non-arbitrary precision routines.  I thought floating point arithmetic has no place in integer factorization?!
Post
Topic
Board Altcoin Discussion
Re: [XPM] A GPU miner for XPM is around the corner? (via CUMP).
by
AstroKev
on 18/07/2013, 01:21:48 UTC
Here is a few year old example where an implementation of ECM was developed and compared against the standard CPU and the result was roughly 2x faster.  I know we're not talking about ECM here but again it's suggestive of what one might expect.

http://eecm.cr.yp.to/gpuecm-20090127.pdf

modular arithmetic is very easy to implement with the four basic arithmetic functions, so I'm not sure what the holdup is around that?
Post
Topic
Board Gambling
Re: automatic satoshicircle gambler bot -- martingale AND MORE!
by
AstroKev
on 04/07/2013, 03:14:09 UTC
It should be outputting as it goes.  If not, you're getting the output buffered.  Adding ob_flush() right after the "sleep (6)" in the while loop might help.

Aside:  I had some recent exchanges with the operator of the site, and it seemed they were pretty okay with the idea of these bots.  Obviously the cards are stacked against users of the bot and in their favor so it's in their interest, but in case there were concerns about this. 

---

Here is another serious hack job of this bot which uses a very different strategy than martingale.  Instead, this bot tries to make very small wins by being tuned to the 5x and/or 10x circle jackpots.  Essentially it ramps up the bet to make up for losses IF the jackpot is hit, and then a little bit.  The idea is to be able to stretch the runs out much further and minimize the case of catastrophe.  Sorry this code is so ugly.  Clearly I'm hacking around.  BTW, to use this bot "as is", aside from putting your secret in, you must also have unlocked the 5x wheel.  You should expect that this bot may run up to at least 120-150 iterations before hitting the jackpot.  Losing 20+ times in a row will cause you some grief on the amounts it will want to bet, so as always, starting very small is a good idea.

I've also added a parameter to enable a bet as a percentage of your balance. 


Code:

// Forum discussion at http://goo.gl/b4XsJ
//
// how to use:
//
// adjust parameters and bailout points appropriately below.  You can change the "circle" you want to use
// or 
// sign up at: https://satoshicircle.com/?aid=843
//
// donations greatly appreciated!
//     BTC: 1LJ5qXEqveTvdFZFkvDk9MhpyDRCicLPT8
//     LTC: LcdnGybqvgfTKSV4yCscbZoDTTQiicuVw9
//
//

date_default_timezone_set ('America/Los_Angeles');

$AcctInfo = array ();

// $AcctInfo ['CookieFile'] = '/tmp/sc-cookies-' . posix_getpid();
// first visit https://satoshicircle.com/?aid=843 
// then you need to grab the secret out of your url and plaster it in here.

$secret "YOUR-SECRET-HERE";

$jackpotwin 3;

$startbetbalancepctg 0.02// set to -1 to use fixed bet 
// $startbet = 0.0005;  // use a fixed start bet
$minbet $startbet;

$bailpctglessbalance 0.7;
// if our balance drops to this percentage below the highest balance we have seen, then stop.

// YOU MUST HAVE UNLOCKED THE 5X CIRCLE FOR THIS BOT.
$idgame 2;
               
// 1 is the "3x" circle.      9/17
               // 2 is the "5x" circle.      7/17
               // 3 is the "10x" circle.     5/17
               // 4 is the "2x" circle.      8/17   NOT TESTED PROBABLY BAD DONT USE.

$idbet "";
$clientseed rand (); // stick whatever you like here; change it or random or whatever.
$iter 1;
$consecerr 0;  // exit after this many consecutive errors.
$ttlbets 0;

$minbalance 0.0;
$maxbalance 20.0

$postdata sprintf ("function=getBalance&secret=%s"$secret);
GetURL ($r$AcctInfo"https://satoshicircle.com/control.php"""$postdata0);
if (
strncasecmp ($r ['response'], '{"balance"'10) == 0) {
   
$json json_decode ($r ['response'], true);
   
$curbalance $json ['balance'];
}

$startbalance $curbalance;
$highestbalance $curbalance;
if (
$startbetbalancepctg 0$startbet $curbalance $startbetbalancepctg 100;
$bet $startbet;
$iter 0;

if (
$idgame == 1$jackpotval 3;
else if (
$idgame == 2$jackpotval 5;
else if (
$idgame == 3$jackpotval 10;
else if (
$idgame == 4$jackpotval 2;

$wintarget $startbet $jackpotval;
$runstartbalance $startbalance;

while ((
$curbalance $bet 0) && 
   (
$curbalance $minbalance) &&
   (
$curbalance $maxbalance) &&
   (
$curbalance $bet $highestbalance $bailpctglessbalance)) {

   
$postdata sprintf ("function=getSpin&bet=%.8f&secret=%s&clientSeed=%s&idbet=%s&idgame=%s",
      
$bet$secret$clientseed$idbet$idgame);
   
GetURL ($r$AcctInfo"https://satoshicircle.com/control.php"""$postdata0);

   
$winloss '';
   if (
strncasecmp ($r ['response'], '{"spin":'8) == 0) {
      
$json json_decode ($r ['response'], true);
      if (
$json ['result'] >= 1$winloss "WIN";
      else 
$winloss "LOSE";
      
$curbalance $json ['balance'];
      if (
$curbalance $highestbalance$highestbalance $curbalance;
   } 

   
$delta $curbalance $startbalance;
   if (
$startbalance != 0$deltapctg $delta $startbalance 100;
   else 
$deltapctg 0;

   
$deltabalance $curbalance $runstartbalance;
   
$deltastartbalance $curbalance $startbalance;

//   printf ("%s\t%s\t%s\t", date ('Y-m-d H:i:s'), ++$ttlbets, $iter);
   
printf ("%s\t%s\t",  ++$ttlbets$iter);
   
printf ("wt=%.8f\t"$wintarget);
   
printf ("%.8f (D=%.8f SD=%.8f) \t%s\t%s\t"$bet$deltabalance$deltastartbalance$json ['result'], $winloss);
//   printf ("%.8f (E=%.8f, D=%.8f/SD=%.8f) \t%s\t%s\t", $bet, $sumbets, $deltabalance, $deltastartbalance, $json ['result'], $winloss);
//   printf ("%.8f\t%.4f%%\t", $delta, $deltapctg);
   
printf ("%.8f [%.8f] %.8f\t"
      
$highestbalance $bailpctglessbalance,
      
$curbalance,
      
$highestbalance);
   
printf ("%.4f%%\n"$deltapctg);

   
$recalibrate 0;

//   if ($startbetbalancepctg > 0) $startbet = $curbalance * $startbetbalancepctg / 100;

   
if ($json ['result'] >= $jackpotwin) {
      
printf ("Jackpot!  Resetting iter...\n\n");
      if (
$startbetbalancepctg 0$startbet $curbalance $startbetbalancepctg 100;
      
$iter 1;
      
$wintarget $startbet $jackpotval;
      
$bet $startbet;
      
$runstartbalance $curbalance;
   } else {
      if (
$deltabalance >= 0$bet $startbet;
      else {
         
$bet $wintarget + (-$deltabalance);
         
$bet /= $jackpotval;
      }

      
$iter++;
   }

   if (
$bet $startbet$bet $startbet;

   if (
strcasecmp ($winloss'win') == 0) {
      
$consecerr 0;
   } else if (
strcasecmp ($winloss'lose') == 0) {
      
$consecerr 0;
   } else {
      
$consecerr++;
      
$sleeptime << $consecerr;
      
printf ("consecerr=%d  sleeping: [%d]\n"$consecerr$sleeptime);
      
sleep ($sleeptime);
      if (
$consecerr 5) exit();
   }

   
sleep (6);
}


printf ("%s\tEXIT!  startbalance=%.8f   endingbalance=%.8f   highestbalance=%.8f  attemptedbet=%.8f   bailpoint=%.8f\n"date ('Y-m-d'), $startbalance$curbalance$highestbalance$bet$highestbalance $bailpctglessbalance);
printf ("Net return: %.4f%%\n"$deltapctg);


function 
GetURL (&$Response, &$AcctInfo$url$ref NULL$postdata NULL$header 1)
{
   
$Response = array ();

   
$ch curl_init();
   
curl_setopt ($chCURLOPT_URL$url);
//   curl_setopt ($ch, CURLOPT_USERAGENT, $AcctInfo ['UserAgent']);
//   curl_setopt ($ch, CURLOPT_PROXY, $AcctInfo ['ProxyIPPort']);
//   curl_setopt ($ch, CURLOPT_HTTPPROXYTUNNEL, 1);
//   curl_setopt ($ch, CURLOPT_COOKIEFILE, $AcctInfo ['CookieFile']);
//   curl_setopt ($ch, CURLOPT_COOKIEJAR, $AcctInfo ['CookieFile']);
   
curl_setopt ($chCURLOPT_REFERER$ref);
   
curl_setopt ($chCURLOPT_RETURNTRANSFER1);
   
curl_setopt ($chCURLOPT_FOLLOWLOCATION1);
   
curl_setopt ($chCURLOPT_HEADER$header);
   
curl_setopt ($chCURLOPT_SSL_VERIFYPEER0);
   
curl_setopt ($chCURLOPT_SSL_VERIFYHOST0);
   
curl_setopt ($chCURLOPT_VERBOSEfalse);
   
curl_setopt ($chCURLOPT_CONNECTTIMEOUT10);
   
curl_setopt ($chCURLOPT_TIMEOUT30);

   
curl_setopt ($chCURLOPT_HTTPHEADER, array (
         
'Accept: */*',
         
'Accept-Language: en-us,en;q=0.5')
      );
   if (
$postdata != NULLcurl_setopt ($chCURLOPT_POSTFIELDS$postdata);

   
$Response ['response'] = curl_exec ($ch);
   
$Response ['info'] = curl_getinfo ($ch);
   
$Response ['error'] = curl_error ($ch);

//   var_dump ($Response);

   
curl_close ($ch);
}



?>




Example output:
Quote
> php sc-5x-jackpotter4-acct3.php
1   0   wt=0.00016439   0.00003288 (D=-0.00003288 SD=-0.00003288)    0   LOSE   0.11506972 [0.16435243] 0.16438531   -0.0200%
2   1   wt=0.00016439   0.00003945 (D=-0.00007233 SD=-0.00007233)    0   LOSE   0.11506972 [0.16431298] 0.16438531   -0.0440%
3   2   wt=0.00016439   0.00004734 (D=-0.00002499 SD=-0.00002499)    2   WIN   0.11506972 [0.16436032] 0.16438531   -0.0152%
4   3   wt=0.00016439   0.00003788 (D=-0.00006287 SD=-0.00006287)    0   LOSE   0.11506972 [0.16432244] 0.16438531   -0.0382%
5   4   wt=0.00016439   0.00004545 (D=-0.00002424 SD=-0.00002424)    1.85   WIN   0.11506972 [0.16436107] 0.16438531   -0.0147%
6   5   wt=0.00016439   0.00003773 (D=-0.00006197 SD=-0.00006197)    0   LOSE   0.11506972 [0.16432334] 0.16438531   -0.0377%
7   6   wt=0.00016439   0.00004527 (D=-0.00010724 SD=-0.00010724)    0   LOSE   0.11506972 [0.16427807] 0.16438531   -0.0652%
8   7   wt=0.00016439   0.00005433 (D=-0.00006106 SD=-0.00006106)    1.85   WIN   0.11506972 [0.16432425] 0.16438531   -0.0371%
9   8   wt=0.00016439   0.00004509 (D=-0.00002273 SD=-0.00002273)    1.85   WIN   0.11506972 [0.16436258] 0.16438531   -0.0138%
10   9   wt=0.00016439   0.00003742 (D=-0.00006015 SD=-0.00006015)    0   LOSE   0.11506972 [0.16432516] 0.16438531   -0.0366%
11   10   wt=0.00016439   0.00004491 (D=-0.00010506 SD=-0.00010506)    0   LOSE   0.11506972 [0.16428025] 0.16438531   -0.0639%
12   11   wt=0.00016439   0.00005389 (D=-0.00005117 SD=-0.00005117)    2   WIN   0.11506972 [0.16433414] 0.16438531   -0.0311%
13   12   wt=0.00016439   0.00004311 (D=0.00012127 SD=0.00012127)    5   WIN   0.11515461 [0.16450658] 0.16450658   0.0738%
Jackpot!  Resetting iter...

14   1   wt=0.00016451   0.00003290 (D=-0.00003290 SD=0.00008837)    0   LOSE   0.11515461 [0.16447368] 0.16450658   0.0538%
15   2   wt=0.00016451   0.00003948 (D=-0.00007238 SD=0.00004889)    0   LOSE   0.11515461 [0.16443420] 0.16450658   0.0297%
16   3   wt=0.00016451   0.00004738 (D=-0.00011976 SD=0.00000151)    0   LOSE   0.11515461 [0.16438682] 0.16450658   0.0009%
17   4   wt=0.00016451   0.00005685 (D=-0.00017661 SD=-0.00005534)    0   LOSE   0.11515461 [0.16432997] 0.16450658   -0.0337%
18   5   wt=0.00016451   0.00006822 (D=-0.00024483 SD=-0.00012356)    0   LOSE   0.11515461 [0.16426175] 0.16450658   -0.0752%
19   6   wt=0.00016451   0.00008187 (D=-0.00032670 SD=-0.00020543)    0   LOSE   0.11515461 [0.16417988] 0.16450658   -0.1250%
20   7   wt=0.00016451   0.00009824 (D=-0.00022846 SD=-0.00010719)    2   WIN   0.11515461 [0.16427812] 0.16450658   -0.0652%
21   8   wt=0.00016451   0.00007859 (D=-0.00014987 SD=-0.00002860)    2   WIN   0.11515461 [0.16435671] 0.16450658   -0.0174%
22   9   wt=0.00016451   0.00006288 (D=-0.00021275 SD=-0.00009148)    0   LOSE   0.11515461 [0.16429383] 0.16450658   -0.0556%
23   10   wt=0.00016451   0.00007545 (D=-0.00028820 SD=-0.00016693)    0   LOSE   0.11515461 [0.16421838] 0.16450658   -0.1015%
24   11   wt=0.00016451   0.00009054 (D=-0.00021124 SD=-0.00008997)    1.85   WIN   0.11515461 [0.16429534] 0.16450658   -0.0547%
25   12   wt=0.00016451   0.00007515 (D=-0.00013609 SD=-0.00001482)    2   WIN   0.11515461 [0.16437049] 0.16450658   -0.0090%
26   13   wt=0.00016451   0.00006012 (D=-0.00019621 SD=-0.00007494)    0   LOSE   0.11515461 [0.16431037] 0.16450658   -0.0456%
27   14   wt=0.00016451   0.00007214 (D=-0.00026835 SD=-0.00014708)    0   LOSE   0.11515461 [0.16423823] 0.16450658   -0.0895%
28   15   wt=0.00016451   0.00008657 (D=0.00007793 SD=0.00019920)    5   WIN   0.11520916 [0.16458451] 0.16458451   0.1212%
Jackpot!  Resetting iter...
Post
Topic
Board Gambling
Re: automatic satoshicircle gambler bot -- martingale
by
AstroKev
on 18/06/2013, 05:42:23 UTC
Are you trying to promote the idea that gambling is profitable in the long term?  Roll Eyes

"With my system, you too can be a /
LOL.  No!  If you play to infinity, you will lose.  However, you can have a lot of fun in the interim and if you're lucky even win some extra BTC.  I was trying to be pretty clear about the strategy that the bot uses and the issues that it has (i.e. why you will lose in the long term).

BTW, it was pointed out to me that new users of that site will not have access to the 'default' wheel I have the bot set to use.  You have to use like the 3x wheel until you get enough points.  If the bot says "connection error" when you try to use it, then you need to change the game it is playing.  The easiest way to do this is to change the '$idgame = 2;' above to '$idgame = 1;' in the code above.







Post
Topic
Board Gambling
Topic OP
automatic satoshicircle gambler bot -- martingale
by
AstroKev
on 13/06/2013, 22:34:27 UTC
the satoshicircle site is pretty fun to and doesn't spam the blockchain like a lot of the dice games.  after playing by hand for awhile i decided to implement a simple martingale style strategy as a php script.  as with most things bitcoin, this is pretty simple and very basic and therefore is now released into public domain.

oh and obviously, i'm not responsible for anything you lose/break/etc so use at your own risk.

i'd recommend starting small and working your way up.  you can easily get 15 "losses" in a row, so give yourself much more room than you would think you need!  enjoy!

Code:

//
// very simple bot to play a martingale strategy against satoshicircle.com
// 
// how to use:
//
// adjust martingale parameters and bailout points appropriately below.  You can change the "circle" you want to use
// or 
// sign up at: https://satoshicircle.com/?aid=843
//
// of course you're welcome to do whatever you feel like with this.
// you should read http://en.wikipedia.org/wiki/Martingale_(betting_system) 
//
// donations greatly appreciated!
//     BTC: 1LJ5qXEqveTvdFZFkvDk9MhpyDRCicLPT8
//     LTC: LcdnGybqvgfTKSV4yCscbZoDTTQiicuVw9
//


date_default_timezone_set ('America/Los_Angeles');

$AcctInfo = array ();

// $AcctInfo ['CookieFile'] = '/tmp/sc-cookies-' . posix_getpid();
// first visit https://satoshicircle.com/?aid=843 
// then you need to grab the secret out of your url and plaster it in here.


$secret 'YOUR-SECRET-GOES-HERE';

// after first bet, we only give a small increment trying 
// to win back the original bet and only a small amount.
$usebetrecovery 1;  
$betrecoverymux 1.25;

$eatnegativereturn 1// if a bet is a fractional win (between 0 and 1, like 0.25 or 0.70), reset bet series)

$bmux 2.25;      // if you lose, multiply the previous bet by this much.  
$backwalkmux 0.7;  // when reducing bets, reduce by this amount

$startbet 0.000004;
$minbet $startbet;
$bailiter 12;

$bailpctglessbalance 0.70;
//$bailpctglessbalance = 0;
// if our balance drops to this percentage below the highest balance we have seen, then stop.


$idgame 4;   
               
// 1 is the 3x circle.        9/17
               // 2 is the "5x" circle.   7/17  
               // 3 is the "10x" circle.     5/17
               // 4 is the "2x" circle.      8/17

$idbet "";
$clientseed rand (); // stick whatever you like here; change it or random or whatever.
$iter 1;
$consecerr 0;  // exit after this many consecutive errors.
$ttlbets 0;

$minbalance 0.0;
$maxbalance 1.0

$postdata sprintf ("function=getBalance&secret=%s"$secret);
GetURL ($r$AcctInfo"https://satoshicircle.com/control.php"""$postdata0);
if (
strncasecmp ($r ['response'], '{"balance"'10) == 0) {
   
$json json_decode ($r ['response'], true);
   
$curbalance $json ['balance'];
}

$startbalance $curbalance;
$highestbalance $curbalance;
$bet $startbet;

while ((
$curbalance $bet 0) && 
   (
$curbalance $minbalance) &&
   (
$curbalance $maxbalance) &&
   (
$curbalance $bet $highestbalance $bailpctglessbalance)) {

   
sleep (6);

   
$postdata sprintf ("function=getSpin&bet=%.8f&secret=%s&clientSeed=%s&idbet=%s&idgame=%s",
      
$bet$secret$clientseed$idbet$idgame);
   
GetURL ($r$AcctInfo"https://satoshicircle.com/control.php"""$postdata0);

   
$winloss '';
   if (
strncasecmp ($r ['response'], '{"spin":'8) == 0) {
      
$json json_decode ($r ['response'], true);
      if (
$json ['result'] >= 1$winloss "WIN";
      else 
$winloss "LOSE";
      
$curbalance $json ['balance'];
      if (
$curbalance $highestbalance$highestbalance $curbalance;
   } 

   if (
$startbalance 0$startbalance $json ['balance'];
   
$delta $json ['balance'] - $startbalance;

   if (
$startbalance != 0$deltapctg $delta $startbalance 100;
   else 
$deltapctg 0;

   
printf ("%s\t%s\t%s\t"date ('Y-m-d H:i:s'), ++$ttlbets$iter);
   
printf ("%.8f\t%s\t%s\t"$bet$json ['result'], $winloss);
//   printf ("%.8f\t%.4f%%\t", $delta, $deltapctg);
   
printf ("%.8f [%.8f] %.8f\t"
      
$highestbalance $bailpctglessbalance,
      
$curbalance,
      
$highestbalance);
   
printf ("%.4f%%\n"$deltapctg);


   if (
strcasecmp ($winloss'win') == 0) {
      
printf ("\n");
      
$bet $startbet;
      
$iter 1;
      
$consecerr 0;
   } else if (
strcasecmp ($winloss'lose') == 0) {
      if ((
$usebetrecovery) && ($iter == 1)) {
         
$bet *= $betrecoverymux;
      } else {
         if ((
$json ['result'] > 0) && ($json ['result'] < 1)) {
            if (
$eatnegativereturn) {
               
printf ("eating negative return bet\n");
               
$bet $startbet;
               
$iter 0;
            } else 
$bet *= $json ['result'];
         } else {
            
$bet *= $bmux;
         }
      }
      
$iter++;
      
$consecerr 0;
   } else {
      
$consecerr++;
      
$sleeptime << $consecerr;
      
printf ("consecerr=%d  sleeping: [%d]\n"$consecerr$sleeptime);
      
sleep ($sleeptime);
      if (
$consecerr 5) exit();
   }

   if (
$iter $bailiter) {
      
printf ("iter: [%d] > %d -- eating and walking backwards.\n"$iter$bailiter);
      
$bet /= $bmux;
      
$bet *= $backwalkmux;
      if (
$bet $minbetmux) {
         
printf ("iter: [%d] -- walked backward and now at minbet.  eating loss and restarting.\n"$iter);
         
$iter 1;
         
$bet $startbet;
      }
   }
}


printf ("%s\tEXIT!  curbalance=%.8f   highestbalance=%.8f  bet=%.8f   bailpoint=%.8f\n"date ('Y-m-d'), $curbalance$highestbalance$bet$highestbalance $bailpctglessbalance);


function 
GetURL (&$Response, &$AcctInfo$url$ref NULL$postdata NULL$header 1)
{
   
$Response = array ();

   
$ch curl_init();
   
curl_setopt ($chCURLOPT_URL$url);
//   curl_setopt ($ch, CURLOPT_USERAGENT, $AcctInfo ['UserAgent']);
//   curl_setopt ($ch, CURLOPT_PROXY, $AcctInfo ['ProxyIPPort']);
//   curl_setopt ($ch, CURLOPT_HTTPPROXYTUNNEL, 1);
//   curl_setopt ($ch, CURLOPT_COOKIEFILE, $AcctInfo ['CookieFile']);
//   curl_setopt ($ch, CURLOPT_COOKIEJAR, $AcctInfo ['CookieFile']);
   
curl_setopt ($chCURLOPT_REFERER$ref);
   
curl_setopt ($chCURLOPT_RETURNTRANSFER1);
   
curl_setopt ($chCURLOPT_FOLLOWLOCATION1);
   
curl_setopt ($chCURLOPT_HEADER$header);
   
curl_setopt ($chCURLOPT_SSL_VERIFYPEER0);
   
curl_setopt ($chCURLOPT_SSL_VERIFYHOST0);
   
curl_setopt ($chCURLOPT_VERBOSEfalse);
   
curl_setopt ($chCURLOPT_CONNECTTIMEOUT10);
   
curl_setopt ($chCURLOPT_TIMEOUT30);

   
curl_setopt ($chCURLOPT_HTTPHEADER, array (
         
'Accept: */*',
         
'Accept-Language: en-us,en;q=0.5')
      );
   if (
$postdata != NULLcurl_setopt ($chCURLOPT_POSTFIELDS$postdata);

   
$Response ['response'] = curl_exec ($ch);
   
$Response ['info'] = curl_getinfo ($ch);
   
$Response ['error'] = curl_error ($ch);

//   var_dump ($Response);

   
curl_close ($ch);
}



?>



EDIT ::: Jun 18, 2003 :::
I've reworked a bit of this so that by default it is using the 50/50 circle.  Also there are a few new parameters to edit.

usebetrecovery -- if this is '1' then it will attempt a very small increase (betrecoverymux) on the second bet as an attempt to recoup only the first bet and win only a slight amount.  this is an easy way of extending the martingale stretch by one additional run.

backwalkmux -- in the event the stretch goes past bailiter, instead of restarting the entire run from scratch, the bets are instead reduced by this amount until the bet amount is less than the original starting bet.  again this helps with some recovery with a "run gone wrong"

bailpctglessbalance -- this numbers adjusts upwards as the 'maximum balance' increases and stops the bot in the event that the losses become this percentage of the largest balance seen.  For example, if you start with 0.10 BTC, and have this set as 0.70, the bot will stop if a bet were to place the balance at or below 0.07. (0.1 * 0.7).  This number will scale upwards as your balance increases, so if you went up to 0.15 BTC, this would become 0.105 (0.15 *.07) and is recalculated with each spin.


the output file format:


1) time/date
2) total bets since bot started
3) number of iterations in the current stretch
4) bet used
5) result of bet
6) whether it's considered a win or loss ('WIN/LOSE')
7) bailpoint balance [ current balance ] highest balance seen
8 ) percentage gain/loss since bot started



---

HOW TO USE:

Simple copy/paste/save the code from above and save as "scbot.php".  Edit the configuration parameters, esepecially the 'YOUR-SECRET-GOES-HERE' area.  Get a secret key by visiting https://satoshicircle.com/?aid=843 and copying the secret out of the url you see in your browser.  Of course, you can modify any of the other parameters as you like as well and begin running the bot.  To stop it, either break out or let it exit out once an exit condition is met (i.e. minimum balance or maximum balance)








Example log:

Quote
2013-06-18 23:17:26   1   1   0.00300000   2   WIN   0.07771138 [0.11101626] 0.11101626   2.7774%

2013-06-18 23:17:32   2   1   0.00300000   0   LOSE   0.07771138 [0.10801626] 0.11101626   0.0000%
2013-06-18 23:17:39   3   2   0.00375000   2   WIN   0.07823638 [0.11176626] 0.11176626   3.4717%

2013-06-18 23:17:46   4   1   0.00300000   2   WIN   0.08033638 [0.11476626] 0.11476626   6.2491%

2013-06-18 23:17:52   5   1   0.00300000   2   WIN   0.08243638 [0.11776626] 0.11776626   9.0264%

2013-06-18 23:17:59   6   1   0.00300000   .7   LOSE   0.08243638 [0.11686626] 0.11776626   8.1932%
2013-06-18 23:18:05   7   2   0.00375000   2   WIN   0.08443138 [0.12061626] 0.12061626   11.6649%

2013-06-18 23:18:12   8   1   0.00300000   0   LOSE   0.08443138 [0.11761626] 0.12061626   8.8876%
2013-06-18 23:18:19   9   2   0.00375000   2   WIN   0.08495638 [0.12136626] 0.12136626   12.3593%

2013-06-18 23:18:25   10   1   0.00300000   2   WIN   0.08705638 [0.12436626] 0.12436626   15.1366%

2013-06-18 23:18:32   11   1   0.00300000   .7   LOSE   0.08705638 [0.12346626] 0.12436626   14.3034%
2013-06-18 23:18:39   12   2   0.00375000   2   WIN   0.08905138 [0.12721626] 0.12721626   17.7751%

2013-06-18 23:18:45   13   1   0.00300000   2   WIN   0.09115138 [0.13021626] 0.13021626   20.5525%

2013-06-18 23:18:52   14   1   0.00300000   0   LOSE   0.09115138 [0.12721626] 0.13021626   17.7751%
2013-06-18 23:18:59   15   2   0.00375000   0   LOSE   0.09115138 [0.12346626] 0.13021626   14.3034%
2013-06-18 23:19:05   16   3   0.00843750   2   WIN   0.09233263 [0.13190376] 0.13190376   22.1147%

2013-06-18 23:19:12   17   1   0.00300000   2   WIN   0.09443263 [0.13490376] 0.13490376   24.8921%

2013-06-18 23:19:18   18   1   0.00300000   2   WIN   0.09653263 [0.13790376] 0.13790376   27.6694%

2013-06-18 23:19:25   19   1   0.00300000   2   WIN   0.09863263 [0.14090376] 0.14090376   30.4468%

2013-06-18 23:19:32   20   1   0.00300000   2   WIN   0.10073263 [0.14390376] 0.14390376   33.2242%

2013-06-18 23:19:38   21   1   0.00300000   2   WIN   0.10283263 [0.14690376] 0.14690376   36.0015%

2013-06-18 23:19:45   22   1   0.00300000   2   WIN   0.10493263 [0.14990376] 0.14990376   38.7789%

2013-06-18 23:19:52   23   1   0.00300000   0   LOSE   0.10493263 [0.14690376] 0.14990376   36.0015%
2013-06-18 23:19:58   24   2   0.00375000   .7   LOSE   0.10493263 [0.14577876] 0.14990376   34.9600%
eating negative return bet
2013-06-18 23:20:05   25   1   0.00300000   0   LOSE   0.10493263 [0.14277876] 0.14990376   32.1827%
2013-06-18 23:20:12   26   2   0.00375000   2   WIN   0.10493263 [0.14652876] 0.14990376   35.6544%

2013-06-18 23:20:18   27   1   0.00300000   0   LOSE   0.10493263 [0.14352876] 0.14990376   32.8770%
2013-06-18 23:20:25   28   2   0.00375000   2   WIN   0.10493263 [0.14727876] 0.14990376   36.3487%

2013-06-18 23:20:31   29   1   0.00300000   2   WIN   0.10519513 [0.15027876] 0.15027876   39.1261%

2013-06-18 23:20:38   30   1   0.00300000   2   WIN   0.10729513 [0.15327876] 0.15327876   41.9034%

2013-06-18 23:20:45   31   1   0.00300000   2   WIN   0.10939513 [0.15627876] 0.15627876   44.6808%

2013-06-18 23:20:51   32   1   0.00300000   0   LOSE   0.10939513 [0.15327876] 0.15627876   41.9034%
2013-06-18 23:20:58   33   2   0.00375000   0   LOSE   0.10939513 [0.14952876] 0.15627876   38.4317%
2013-06-18 23:21:05   34   3   0.00843750   2   WIN   0.11057638 [0.15796626] 0.15796626   46.2430%

2013-06-18 23:21:11   35   1   0.00300000   0   LOSE   0.11057638 [0.15496626] 0.15796626   43.4657%
2013-06-18 23:21:18   36   2   0.00375000   0   LOSE   0.11057638 [0.15121626] 0.15796626   39.9940%
2013-06-18 23:21:24   37   3   0.00843750   2   WIN   0.11175763 [0.15965376] 0.15965376   47.8053%

2013-06-18 23:21:31   38   1   0.00300000   0   LOSE   0.11175763 [0.15665376] 0.15965376   45.0279%
2013-06-18 23:21:38   39   2   0.00375000   0   LOSE   0.11175763 [0.15290376] 0.15965376   41.5562%
2013-06-18 23:21:44   40   3   0.00843750   .7   LOSE   0.11175763 [0.15037251] 0.15965376   39.2128%
eating negative return bet
2013-06-18 23:21:51   41   1   0.00300000   2   WIN   0.11175763 [0.15337251] 0.15965376   41.9902%

2013-06-18 23:21:58   42   1   0.00300000   2   WIN   0.11175763 [0.15637251] 0.15965376   44.7676%

2013-06-18 23:22:04   43   1   0.00300000   2   WIN   0.11175763 [0.15937251] 0.15965376   47.5449%

2013-06-18 23:22:11   44   1   0.00300000   0   LOSE   0.11175763 [0.15637251] 0.15965376   44.7676%
2013-06-18 23:22:19   45   2   0.00375000   2   WIN   0.11208576 [0.16012251] 0.16012251   48.2393%

2013-06-18 23:22:25   46   1   0.00300000   0   LOSE   0.11208576 [0.15712251] 0.16012251   45.4619%
2013-06-18 23:22:32   47   2   0.00375000   0   LOSE   0.11208576 [0.15337251] 0.16012251   41.9902%
2013-06-18 23:22:39   48   3   0.00843750   0   LOSE   0.11208576 [0.14493501] 0.16012251   34.1789%
2013-06-18 23:22:45   49   4   0.01898438   0   LOSE   0.11208576 [0.12595063] 0.16012251   16.6034%
iter: [5] > 4 -- eating and walking backwards.
2013-06-18 23:22:52   50   5   0.01328906   2   WIN   0.11208576 [0.13923969] 0.16012251   28.9062%

2013-06-18 23:22:59   51   1   0.00300000   2   WIN   0.11208576 [0.14223969] 0.16012251   31.6836%

2013-06-18 23:23:05   52   1   0.00300000   0   LOSE   0.11208576 [0.13923969] 0.16012251   28.9062%
2013-06-18 23:23:12   53   2   0.00375000   0   LOSE   0.11208576 [0.13548969] 0.16012251   25.4345%
2013-06-18 23:23:18   54   3   0.00843750   0   LOSE   0.11208576 [0.12705219] 0.16012251   17.6232%
2013-06-18   EXIT!  curbalance=0.12705219   highestbalance=0.16012251  bet=0.01898438   bailpoint=0.11208576
Post
Topic
Board Beginners & Help
Re: Bitcoin Investment Fund
by
AstroKev
on 22/07/2011, 15:02:02 UTC
An alternative version of these type of funds could be to deal with capex on mining hardware and/or r&d on new technologies for mining/semiconductors.  In this way, rather than the fund being a trading vehicle for bitcoin only, it would be able to identify companies which have some influence in the way bitcoins are generated.  For example, AMD would be an obvious candidate, but other companies working in similar promising areas would be available.  This could help to legitimatize the fund since it would have traditional instruments which would 'benefit in the rise of bitcoin'.
Post
Topic
Board Beginners & Help
Re: Bitcoin Price Predictions
by
AstroKev
on 21/07/2011, 07:21:34 UTC
Post
Topic
Board Beginners & Help
Re: Bitcoin Investment Fund
by
AstroKev
on 21/07/2011, 07:18:22 UTC
while this isn't a fund, it's certainly got some 'banker' people behind it:

http://techcrunch.com/2011/06/18/bitcoin-crazy/
Post
Topic
Board Beginners & Help
Re: Just bought a 6950
by
AstroKev
on 20/07/2011, 03:26:16 UTC
You can overclock it using aticonfig and easily gpu mine with m0mchil, diablominer, or others.  You will probably need to use the "-f" option on many of these with a high-ish value to prevent slowing down graphics for your own use.  For example, if you are running X and moving things around this will be slower but the -f option on many of these will enable you to tell the gpu miner to step aside and give more priority to your applications.  See http://forum.bitcoin.org/?topic=1721.0;all for some samples

You will need to install pyopencl and the ati catalyst drivers as well.
Post
Topic
Board Beginners & Help
Re: Uneven performance amog cards
by
AstroKev
on 19/07/2011, 16:39:43 UTC
Most of what I've read suggests either disabling xfire or simply removing the xfire connection cable.  If you can't see some of the cards and are running windows, you may also need to buy or create a DVI:VGA "dummy plug" (although I udnerstand some new catalyst developments may remove this requirement)