from otree.api import ( models, widgets, BaseConstants, BaseSubsession, BaseGroup, BasePlayer, Currency as c, currency_range, ) author = 'Your name here' doc = """ Your app description """ class Constants(BaseConstants): name_in_url = 'Control' players_per_group = None num_rounds = 1 wage = 100 beta = 0.99 interest_rate = 0.01 class Subsession(BaseSubsession): pass class Group(BaseGroup): pass class Player(BasePlayer): Q1 = models.FloatField(label="Suppose in period 1 you consume 81 tokens. What would be your utility in the period 1?") Q2 = models.FloatField(label="Suppose in period 2 you consume 100 tokens. What would be your utility in period 2?") Q3 = models.FloatField(label="Suppose the discount rate is 0.99 and you consume 81 and 100 tokens in periods 1 and 2, respectively. What would be your total discounted utility at the end of period 2?") Q4 = models.FloatField(label="Suppose in every period your wage is 100 tokens and the interest rate is 10%. Suppose you do not consume anything in period 1, so you save 100 tokens. What would be your total income in period 2? ") Q5 = models.FloatField(label="Suppose in every period your wage is 100 and the interest rate is 10%. Suppose you consume 120 tokens in period 1, so you borrow 20. What would be your total income in period 2? ") Q6 = models.FloatField(label="Suppose your lifetime utility is 120 tokens. What would be your total earning in Euro terms? ") consumption_1 = models.FloatField(min=0) consumption_2 = models.FloatField(min=0) consumption_3 = models.FloatField(min=0) consumption_4 = models.FloatField(min=0) consumption_5 = models.FloatField(min=0) consumption_6 = models.FloatField(min=0) consumption_7 = models.FloatField(min=0) consumption_8 = models.FloatField(min=0) consumption_9 = models.FloatField(min=0) consumption_10 = models.FloatField(min=0) consumption_11 = models.FloatField(min=0) consumption_12 = models.FloatField(min=0) consumption_13 = models.FloatField(min=0) consumption_14 = models.FloatField(min=0) consumption_15 = models.FloatField(min=0) consumption_16 = models.FloatField(min=0) consumption_17 = models.FloatField(min=0) consumption_18 = models.FloatField(min=0) consumption_19 = models.FloatField(min=0) consumption_20 = models.FloatField(min=0) consumption_21 = models.FloatField(min=0) consumption_22 = models.FloatField(min=0) consumption_23 = models.FloatField(min=0) consumption_24 = models.FloatField(min=0) consumption_25 = models.FloatField(min=0) consumption_26 = models.FloatField(min=0) consumption_27 = models.FloatField(min=0) consumption_28 = models.FloatField(min=0) consumption_29 = models.FloatField(min=0) consumption_30 = models.FloatField(min=0) utility_1 = models.FloatField() utility_2 = models.FloatField() utility_3 = models.FloatField() utility_4 = models.FloatField() utility_5 = models.FloatField() utility_6 = models.FloatField() utility_7 = models.FloatField() utility_8 = models.FloatField() utility_9 = models.FloatField() utility_10 = models.FloatField() utility_11 = models.FloatField() utility_12 = models.FloatField() utility_13 = models.FloatField() utility_14 = models.FloatField() utility_15 = models.FloatField() utility_16 = models.FloatField() utility_17 = models.FloatField() utility_18 = models.FloatField() utility_19 = models.FloatField() utility_20 = models.FloatField() utility_21 = models.FloatField() utility_22 = models.FloatField() utility_23 = models.FloatField() utility_24 = models.FloatField() utility_25 = models.FloatField() utility_26 = models.FloatField() utility_27 = models.FloatField() utility_28 = models.FloatField() utility_29 = models.FloatField() utility_30 = models.FloatField() saving_1 = models.FloatField() saving_2 = models.FloatField() saving_3 = models.FloatField() saving_4 = models.FloatField() saving_5 = models.FloatField() saving_6 = models.FloatField() saving_7 = models.FloatField() saving_8 = models.FloatField() saving_9 = models.FloatField() saving_10 = models.FloatField() saving_11 = models.FloatField() saving_12 = models.FloatField() saving_13 = models.FloatField() saving_14 = models.FloatField() saving_15 = models.FloatField() saving_16 = models.FloatField() saving_17 = models.FloatField() saving_18 = models.FloatField() saving_19 = models.FloatField() saving_20 = models.FloatField() saving_21 = models.FloatField() saving_22 = models.FloatField() saving_23 = models.FloatField() saving_24 = models.FloatField() saving_25 = models.FloatField() saving_26 = models.FloatField() saving_27 = models.FloatField() saving_28 = models.FloatField() saving_29 = models.FloatField() saving_30 = models.FloatField() wage_2 = models.FloatField() wage_3 = models.FloatField() wage_4 = models.FloatField() wage_5 = models.FloatField() wage_6 = models.FloatField() wage_7 = models.FloatField() wage_8 = models.FloatField() wage_9 = models.FloatField() wage_10 = models.FloatField() wage_11 = models.FloatField() wage_12 = models.FloatField() wage_13 = models.FloatField() wage_14 = models.FloatField() wage_15 = models.FloatField() wage_16 = models.FloatField() wage_17 = models.FloatField() wage_18 = models.FloatField() wage_19 = models.FloatField() wage_20 = models.FloatField() wage_21 = models.FloatField() wage_22 = models.FloatField() wage_23 = models.FloatField() wage_24 = models.FloatField() wage_25 = models.FloatField() wage_26 = models.FloatField() wage_27 = models.FloatField() wage_28 = models.FloatField() wage_29 = models.FloatField() wage_30 = models.FloatField() ir_1 = models.FloatField() ir_2 = models.FloatField() ir_3 = models.FloatField() ir_4 = models.FloatField() ir_5 = models.FloatField() ir_6 = models.FloatField() ir_7 = models.FloatField() ir_8 = models.FloatField() ir_9 = models.FloatField() ir_10 = models.FloatField() ir_11 = models.FloatField() ir_12 = models.FloatField() ir_13 = models.FloatField() ir_14 = models.FloatField() ir_15 = models.FloatField() ir_16 = models.FloatField() ir_17 = models.FloatField() ir_18 = models.FloatField() ir_19 = models.FloatField() ir_20 = models.FloatField() ir_21 = models.FloatField() ir_22 = models.FloatField() ir_23 = models.FloatField() ir_24 = models.FloatField() ir_25 = models.FloatField() ir_26 = models.FloatField() ir_27 = models.FloatField() ir_28 = models.FloatField() ir_29 = models.FloatField() ir_30 = models.FloatField() acc_utility = models.FloatField() Bank_Name = models.StringField(label="Bank account holder's name:") Bank_Number = models.StringField(label="Bank account number") Bank_Number_Verify = models.StringField(label="Bank account number verification")