¿ÃÇØ¿¡ ProsperDays ³ªÀÇ ¹ßÇ¥¸¦ À§ÇØ ³ª ¹ø¿µ API·Î ÀÔÂûÀ» ¼³¸íÇÏ´Â ÀÇÁö¡¦? ³ª´Â ÀÚ¹Ù ÇÁ·Î±×·¥À» ÀÚ¸£´Â ºü¸£°í ´õ·¯¿î ÀÔÂûÀ» °Ç¼³Çߴ°¡.? (ÀÌ ÇÁ·Î±×·¥Àº ÀÔÂûÇÑ Àú°Ý °ø±¸·Î Ȳ±Ý ½Ã°£ ÀÌ ÁغñµÇ¾î ÀÖÁö ¾Ê´Ù, ±×·¯³ª ¾ÆÁÖ °¡±î¿ì ¾ÆÁÖ È¿°úÀûÀÎ ¹ÎÁÖ´ç¿øÀΰ¡.? ³ª°¡ ¸»ÇÏ´Â ÀÌÀ¯ ÁغñµÇ¾î ÀÖÁö ¾Ê´Ù´Â °ÍÀ» ¿¬¼ÓÀûÀÎ ÅëÇà¿¡ µ¿ÀÏÇÑ ¸íºÎÀÛ¼º¿¡ ÀÔÂûÇÒ °ÍÀ̶ó´Â Á¡À» ÀǹÌÇÏ´Â ±â¾ïÀÌ °á¿©µÈ´Ù ´Ù´Â °ÍÀ».)
³ª´Â API°¡ ÀÔÂû ¿ë°¨ÇÑ »õ·Î¿î ¼¼°è¿¡ ÀÖ´Â Á¦ ´Ü°èÀÇ ´ë¿© ¹ø¿µÇѤ¤´Ù´Â °ÍÀ»´Ù´Â °ÍÀ» »ý°¢Çϴ°¡.? 1°³¸¦, ±×°ÍÀº ½±°Ô ÁÖ¹® ¸ðÇüÀ».
ÀÌ·¸°Ô ¹«¾ùÀ» 126 ¼± ÇÁ·Î±×·¥Àº ÀÌ Çϴ°¡?
±×°ÍÀº Ȱµ¿ÀûÀÎ AA-C ½Å¿ë ±Þ·á ¸íºÎÀÛ¼ºÀ»¡¦ Áú¹®Çϴ°¡? ¸íºÎÀÛ¼ºÀÌ Åë°úÇÏ´Â °æ¿ì¿¡ ³ªÀÇ Àå½Ã°£ ½Å¿ëÀº °Å¸£´Â°¡ (¿½ÉÈ÷ ¾ÏÈ£·Î ÇÏ´Â)? ±×¸®°í ÃÖ¼ÒÇÑÀº »êÃâÇß´Ù °ç¿¡ »ý¼ºµÇ´Â ROI °¡Ä¡¸¦ ¹ø¿µÇϴ°¡ (? ¹ø¿µÇϴ°¡ Áö¸éÀº ¸Å°³º¯¼ö·Î ¾ÈÀ¸·Î Åë°úµÇ´Â°¡)? ±×¸®°í °æ¸Å¿¡¼ ÀÜ¿© ÃÖ¼ÒÇѵµ ½Ã°£ ±×°ÍÀº ÀÔÂûµÈ È®ÀÎ ½ÃÇè ¶Ç´Â ÁøÂ¥ ÀÔÂûÀ» µÑ °ÍÀÌ´Ù.
ÀÌ ºÎÈ£ÀÇ Àå½Ã°£ ½Å¿ë ÇÊ¿äÁ¶°ÇÀº ¹«¾ùÀΰ¡? ªÀº ÀÀ´ä¡¦ ¾ÆÁÖ ´Ü´ÜÈ÷.
- 0 ÇöÀç DQ
- 0-1 ¸¶Áö¸· 6 ´Þ¿¡¼ »ç¹®ÇÑ´Ù
- ¸¶Áö¸·¿¡ ÀÖ´Â 0¸íÀÇ °øÁß ±â·Ï 10 ³â
- ¸¶Áö¸·¿¡ ÀÖ´Â 0 DQ 7 ³â
- 3%¿Í 80% »çÀÌ Bankcard ÀÌ¿ë
ÀÚ¹Ù ºÎÈ£ (³ª´Â¿¡ ÀÌ ºÎÈ£¸¦ °øÇåÇß´Ù ¿©±â¿¡¼ ÀÖ´Ù SourceForge´Â API ¹ø¿µÇϴ°¡? ÇÁ·ÎÁ§Æ®).? ±×°ÍÀº ¾ÆÆÄÄ¡ ±âÃÊ¿¡ ÀÇÇÏ¿© Java2WSDL ±×¸®°í ¿ÀÇ ¼Ò½º °ø±¸¿¡ ÀÇÇØ »ý¼ºµÈ API Á¾·ù¸¦ ¿ä±¸ÇÑ´Ù.
Æ÷Àå prosper.api;
¼öÀÔǰ java.math.BigDecimal;
¼öÀÔǰ java.math.MathContext;
¼öÀÔǰ java.rmi.RemoteException;
¼öÀÔǰ java.sql. ŸÀÓ ½ºÅÆÇÁ;
¼öÀÔǰ java.util. ´Þ·Â;
¼öÀÔǰ java.util. Iterator;
¼öÀÔǰ java.util.TreeMap;
¼öÀÔǰ javax.xml.rpc.ServiceException;
¼öÀÔǰ com.prosper.services.ProsperAPI.DefinitionResult;
¼öÀÔǰ com.prosper.services.ProsperAPI.Field;
¼öÀÔǰ com.prosper.services.ProsperAPI.Listing;
¼öÀÔǰ com.prosper.services.ProsperAPI.ProsperAPILocator;
¼öÀÔǰ com.prosper.services.ProsperAPI.ProsperAPISoap;
¼öÀÔǰ com.prosper.services.ProsperAPI.ProsperObject;
¼öÀÔǰ com.prosper.services.ProsperAPI.ProsperObjectResult;
°øÁß Á¾·ù QuickSnipe
{
°³ÀÎ ²ö m_Username;
°³ÀÎ ²ö m_Password;
°³ÀÎ µÎ ¹è m_MinROI;
°³ÀÎ int m_HoursToGo;
°³ÀÎ ºÎ¿ï ³í¸® ¿¬»ê m_PlaceBids;
ProsperAPISoap °³ÀÎ m_APISoap;
°øÁß QuickSnipe (²ö »ç¿ëÀÚ À̸§, ²ö ¾ÏÈ£, µÎ ¹è minROI, int hoursToGo, ºÎ¿ï ³í¸® ¿¬»ê placeBids)´Â ServiceException¸¦ ´øÁø´Ù
{
m_Username = »ç¿ëÀÚ À̸§;
m_Password = ¾ÏÈ£;
m_MinROI = minROI;
m_PlaceBids = placeBids;
m_HoursToGo = hoursToGo;
m_APISoap = (»õ·Î¿î ProsperAPILocator ()).getProsperAPISoap ();
}
/**
* @param args
*
ÁÖ¿ä °øÁß °øÀü °øÇã (²ö [] args)
{
¸¸¾à¿¡ (args.length! =5)
{
System.err.println ("»ç¿ë¹ý: QuickSnipe »ç¿ëÀÚ À̸§ ¾ÏÈ£ minROI hoursToGo PlaceBids ");
¹Ýȯ;
}
½ÃÇè
{
QuickSnipe qs = »õ·Î¿î QuickSnipe (args [0], args [1], Double.parseDouble (args [2]), Integer.parseInt (args [3]), Boolean.parseBoolean (args [4]));
qs.snipe ();
}
ijġ (¿¹¿Ü e)
{
e.printStackTrace (System.err);
}
}
°³ÀÎ °øÇã´Â () ´øÁü ¿¹¿Ü¸¦ Àú°ÝÇÑ´Ù
{
DefinitionResult res = ¾ÈÀ¸·Î m_APISoap.log (m_Username, m_Password);
²ö ÅäÅ« = res.getMessage ();
ProsperObjectResult por = m_APISoap.query(token, "listing", getFieldsString("listing",true), "status=2 and (creditgrade=7 or creditgrade=6 or creditgrade=5 or creditgrade=4)");
ProsperObject[] pos = por.getProsperObjects();
TreeMap<Calendar,Listing> timeLeftListings = new TreeMap<Calendar,Listing>();
for (int i=0; i<pos.length; i++)
{
Listing l = (Listing)pos[i];
Calendar end = (Calendar)l.getStartDate().clone();
end.add(Calendar.HOUR, (l.getDuration()*24));
long millisToGo = end.getTimeInMillis() - System.currentTimeMillis();
if (l.getNowDelinquent()==0 //my required extended credit and ROI
&& (millisToGo/1000/60/60)<=m_HoursToGo
&& l.getInquiriesLast6Months()<2
&& l.getPublicRecordsLast10Years()==0
&& l.getDelinquenciesLast7Years()==0
&& l.getBankcardUtilization().doubleValue()<=.8
&& l.getBankcardUtilization().doubleValue()>=.03
&& ((l.getBidMaximumRate().doubleValue()+l.getROINetDefaultRate().doubleValue()+l.getROIInterestAndFeesRate().doubleValue()+l.getROIServicingFeeRate().doubleValue())>=m_MinROI)
)
{
timeLeftListings.put(end, l);
}
}
boolean pause = false;
for (Iterator<listing> i = timeLeftListings.values().iterator(); i.hasNext(); )
{
if (pause) // you have to pause to avoid bid throttling
{try {Thread.sleep(6000);}catch (Exception ignore){}}
Listing l = i.next();
Timestamp startts = new Timestamp(l.getStartDate().getTimeInMillis());
Calendar end = (Calendar)l.getStartDate().clone();
end.add(Calendar.HOUR, (l.getDuration()*24));
Timestamp endts = new Timestamp(end.getTimeInMillis());
long hoursToGo = (end.getTimeInMillis() - System.currentTimeMillis())/1000/60/60;
System.err.println("\n"+startts+" + "+l.getDuration()+" days = "+endts+" | Hours To Go: "+hoursToGo);
System.err.println("Bid on Listing: "+l.getListingNumber()+"\nAt Rate: "+(m_MinROI-l.getROINetDefaultRate().doubleValue()-l.getROIInterestAndFeesRate().doubleValue()-l.getROIServicingFeeRate().doubleValue()));
res = m_APISoap.bid(token, l.getListingNumber(), new BigDecimal(50,new MathContext(4)), new BigDecimal(m_MinROI-l.getROINetDefaultRate().doubleValue()-l.getROIInterestAndFeesRate().doubleValue()-l.getROIServicingFeeRate().doubleValue(),new MathContext(4)), m_PlaceBids);
pause = true;
System.err.println("Bid Message: "+res.getMessage());
}
m_APISoap.logout(token);
}
private String getFieldsString(String type, boolean authenticated) throws RemoteException
{
DefinitionResult res = m_APISoap.describe(null, type);
Field[] fields = res.getDefinition().getFields();
int count = 0;
String s="";
for (int i=0; i<fields.length; i++)
{
if (authenticated || !fields[i].isAuthenticated())
{
if (count!=0)
{
s+= ",";
}
s+= fields[i].getName();
count++;
}
}
return s;
}
}
Related Stores- Tool T Rock, Pop Music Memorabilia Entertainment Memorabilia
- Custom Womens Shoes
- Arbonne Foundation Makeup Store
- Sheer Cover Foundation Makeup Store
- Ultima Foundation Makeup Store
Categories:



































2 comments ¡é
Cool, thanks for sharing! I¡¯ll have to get my jdk installed again at home and give it a shot.
[...] RateLadder on Prosper Days 2008?as well as the source code for the tool demonstrated at Prosper Days: QuickSnipe [...]
Leave a Comment